前端面試題

星米尔工作室發表於2024-12-05

JavaScript

基礎知識:

1、資料型別

  • 基礎資料型別:Number String Boolean Null Undefined Symbol BigInt
  • 引用資料型別:Object Array Function Date

2、作用域與閉包

  • 作用域:變數的可訪問範圍。分為全域性作用域、函式作用域、塊級作用域(let和const)。
  • 閉包:函式可以“記住”並訪問定義時的作用域。

3、this

  • this指向呼叫函式的上下文。
  • 在函式中this指向全域性物件(瀏覽器中是window),在物件方法中指向該物件,箭頭函式沒有自己的this,它繼承自外部作用域。

4、原型與繼承

  • 每個物件都有一個_proto_屬性,指向其建構函式的原型物件。透過原型鏈實現繼承。

5、事件迴圈與非同步程式設計

  • JavaScript是單執行緒的,透過事件迴圈處理非同步操作。
  • 非同步操作:回撥函式、Promise、async/await。

6、函式

  • 函式宣告與函式表示式:宣告式函式有提升,表示式函式沒有。
  • 箭頭函式:簡化函式的寫法,且沒有this。

7、陣列與物件

  • 陣列:常用的方法包括map、filter、reduce等。
  • 物件:鍵值對結構,可以透過dot notation或brecket notation訪問。

8、ES6+的新特性

  • 解構賦值:方便的從資料或物件中提取值。
  • 模版字串:支援內嵌表示式和多行字串。
  • 模組化:import和export語法。

9、錯誤處理

  • 使用try...catch捕獲錯誤。
  • throw自定義錯誤。

  

相關文章