前端面試題(JavaScript)

(前端面試題大全,持續更新)html

  1. 箭頭函數特色?箭頭函數和普通函數的區別
  2. 手寫懶加載(考慮防抖和重複加載問題)
  3. 手寫bind(爲何要加預參數,爲何要加new)
  4. apply, call, bind
  5. new一個對象中間作了什麼操做
  6. setTimeout必定會按時執行嗎?
  7. 講一講event loop(微任務、宏任務等)
  8. promise原理,Promise.all() 和 Promise.race() 怎麼用,他是幹啥的?你會在啥場景使用他,promise如何解決回凋地獄?如何和ajax配合?
  9. async和generator有什麼區別,寫一個async和generator函數,並介紹區別
  10. 內存,
  11. 深拷貝和淺拷貝 object.assign
  12. 原型鏈
  13. 繼承
  14. es6的新屬性
  15. 閉包
  16. 數組方法
  17. 字符串方
  18. sort 底層原理,是否是每一個瀏覽器都是這樣
  19. 冒泡,query書寫(事件冒泡)
  20. 寫sleep函數
  21. defineProperty的參數
  22. 一個對象不讓改變,不讓循環怎麼作? writeable, enumable
  23. 基本類型?symbol()
  24. 建立DOM節點,添加,刪除,替換,克隆對應的 api 是什麼
  25. 實現一個 Event 類,具備 on\off\trigger\once 四個方法
  26. 實現去抖函數
  27. 實現反轉函數
  28. 節流函數
  29. reduce實現map的功能
  30. 解釋並實現 new 操做 `function newOperator(Constructor, args) {}`
  31. js單線程。
  32. js判斷數組。
  33. 浮點數計算0.7+0.1,緣由
  34. window.onload和document.onload區別
  35. this指向的問題
  36. 類型判斷,這個很簡單,寫了typeof, instanceof, Object.toString.call ,
  37. class
  38. async/await
  39. Proxy:攔截什麼(get,set,deleteProperty, has, getPrototypeOf, defineProperty )
  40. 如何執行異步?
  41. setTimeout、setInterval與requestAnimationFrame
  42. 講一下什麼是 prototype
  43. 類數組轉化成數組的方法
  44. 代碼題,思路是將一個嵌套的數組用深度遍歷和廣度遍歷分別寫出來
  45. js類型,封裝一個類型鑑定函數
  46. 當即執行函數解決閉包中訪問變量的問題
  47. 事件輪訓機制
  48. 預編譯,
  49. 嚴格模式,
  50. 做用域鏈
  51. js腳本加載問題,async、defer問題
  52. 打平數組和規定深度的打平數組
  53. 給定一個字符串以下,請統計字符串中出現最多的字母和次數
  54. 實現必定時間內事件只觸發一次
  55. 值類型str爲何又length屬性
  56. 串行和並行
  57. 經常使用js調試工具
相關文章
相關標籤/搜索