JavaScript 中的 this

this 是一個根據使用位置有不同值的關鍵字。不了解 JavaScript 中這個微小的細節可能會帶來很多困擾,所以花五分鐘的時間來學習所有的技巧是值得的。 this 在嚴格模式下 在任何物件之外,在嚴格模式下,this 的值總是 undefined。 請注意,我提到了嚴格模式。如果未啟用嚴格模式(如果你的文件頂部沒有明確添加 'use strict'),你將處於所謂的松散模式,而 this - 除非下面特殊情況中提到的 - 將具有全局物件的值。 這意味著在瀏覽器上下文中是 window。 方法中的 this 方法是附加到物件的函式。 你可以以各種形式看到它。 以下是其中一種: const car = { maker: 'Ford', model: 'Fiesta', drive() { console.log(`Driving a ${this.maker} ${this.model} car!`) } } car.drive() //Driving a Ford Fiesta car! 在這種情況下,使用一般函式,this 會自動綁定到物件。 注意:上述的方法宣告與 drive: function() {… 是相同的,只是比較簡短: const car = { maker: 'Ford', model: 'Fiesta', drive: function() { console.log(`Driving a ${this.maker} ${this.model} car!`) } } 在這個例子中也是一樣的:...