您好,登錄后才能下訂單哦!
今天小編給大家分享一下JavaScript中的this關鍵字是什么及怎么用的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
const person = { firstName: "John", lastName : "Doe", id : 5566, fullName : function() { return this.firstName + " " + this.lastName; } };
在 JavaScript 中,this關鍵字指的是一個對象。
哪個對象取決于this調用(使用或調用)的方式。
this關鍵字根據其使用方式指代不同的對象:
在對象方法中,this指的是對象。
單獨,this指的是全局對象。
在函數中,this指的是全局對象。
在嚴格模式下的函數中,this是undefined.
在一個事件中,this指的是接收到該事件的元素。
像call()、apply()和這樣的方法bind()可以引用任何對象。this
在對象方法中使用時,this指的是對象。
在頂部的示例中,this指的是person對象。
因為fullName方法是person對象的方法。
fullName : function() { return this.firstName + " " + this.lastName; }
單獨使用時,this指的是全局對象。
因為this是在全局范圍內運行的。
在瀏覽器窗口中,全局對象是[object Window]:
let x = this;
在嚴格模式下,單獨使用時,this也指全局對象:
"use strict";let x = this;
在函數中,全局對象是this.
在瀏覽器窗口中,全局對象是[object Window]:
function myFunction() { return this; }
JavaScript嚴格模式不允許默認綁定。
因此,當在函數中使用時,在嚴格模式下,this是undefined.
"use strict";function myFunction() { return this; }
在 HTML 事件處理程序中,this指的是接收到事件的 HTML 元素:
<button onclick="this.style.display='none'"> Click to Remove Me!</button>
在這些示例中,this是person 對象:
const person = { firstName : "John", lastName : "Doe", id : 5566, myFunction : function() { return this; } };
例子:
const person = { firstName: "John", lastName : "Doe", id : 5566, fullName : function() { return this.firstName + " " + this.lastName; } };
即this.firstName是this(人對象)的firstName屬性。
call()和apply()方法是預定義的 JavaScript 方法。
它們都可以用來調用以另一個對象為參數的對象方法。
以上就是“JavaScript中的this關鍵字是什么及怎么用”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。