目錄
JavaScript 面試題詳解—導覽
2023年8月26日
本系列彙整了常見的 JavaScript 面試題,包含基礎、型別、變數、作用域、閉包、陣列、函式、物件、原型,以及事件循環
Lodash 手寫題
- JavaScript 有哪些資料型別?該怎麼辨別一個變數的資料型別?
- 在 JavaScript 當中,==、=== 與 Object.is() 的區別
- null、undefined 與 undeclared 的區別?
- Map 與 object 的差別?為什麼有 object 還需要 Map?
- 請解釋 Set、Map、WeakSet 和 WeakMap 的區別?
- 在 JavaScript 中 0.1 + 0.2 會是多少?為什麼?如何避免相關問題?
- 嚴格模式 (use strict) 的用途?有什麼好處?
變數、作用域、閉包
- 在 JavaScript 中用 var, let, 以及 const 有什麼差別?
- Javascript 的作用域 (Scope) 與作用域鏈 (Scope Chain) 是什麼?
- 什麼是閉包 (Closure)?
- 什麼是提升 (Hoisting)?
陣列
- JavaScript 中陣列 (Array) 的遍歷方法 (for loop, for...in, for…of, forEach, map, filter, every, some)
- JavaScript 中的 sort 傳入 (a,b) => b - a 會是升序還是降序?為什麼呢?
函式
- 什麼是箭頭函式 (Arrow Function)?跟一般的函式有什麼差別?
- JavaScript 立即調用函式 IIFE (Immediately Invoked Function Expression) 是什麼?優缺點是什麼?
- 高階函式 (Higher Order Function) 是什麼?
物件和原型
- 最常見的 JavaScript 原型 (prototype) 面試題 :原型 (prototype)、原型鏈 (prototype chain) 、原型繼承 (prototypal inheritance)
- 請解釋 JavaScript 中 this 的值?
- ES6 中的 class 是什麼?和函式構造函式差別是什麼?
事件循環、Promise、Async/Await
📚 免費訂閱我們的電子報,在瞬息萬變的 AI 時代中,持續走在最前沿