前端工程 進階大師指南 第一章
This 是誰
背起來
- 在函數本體中,非顯性或隱式地簡單呼叫函数時,在嚴格模式下,函數內的this會被綁定到undefined 上,在非嚴格模式下則會被綁定到全域物件window/global 上。
- 一般使用new方法呼叫建構函數時建構函數的this被綁定到新建的物件上。
- 一般透過call/apply/bind 方法性呼函数時,函數本體內的this被綁定到指定參數的物件上。
- 一般透過上下文物件呼叫函数時,函數本體內的this會被綁定到該物件上。
- 在箭頭函数中,this的指向是由外層(函數或全域)作用域來決定的。
Bind、Apply、Call
不造輪子,請參考 realdennis
進階參考紅塵煉心
- 大致差別Call和Bind接多個參數,Apply接陣列。
- call和apply直接調用,而bind還需調用。
-
內容濃縮或節錄至: 前端工程 進階大師指南 ↩
Comments