老生常談JavaScript中的this關(guān)鍵字
相對于很多其他的面向?qū)ο笳Z言來說,this代表的就是當(dāng)前對象。例如Java中的this就是編譯期間確定的。而在 JavaScript 中,this 是動態(tài)綁定,或稱為運行期綁定的
Java中的this
在以下代碼中。this代表的就是p對象。
public class Test { public static void main(String[] args) { Person p = new Person("zmt",30); System.out.println(p.name); } } class Person{ String name; int age; Person(String name,int age){ this.name = name; this.age = age; } }
JavaScript中的this
JavaScript 中的 this 含義要豐富得多,它可以是全局對象、當(dāng)前對象或者任意對象,這完全取決于函數(shù)的調(diào)用方式。JavaScript 中函數(shù)的調(diào)用有以下幾種方式:作為對象方法調(diào)用,作為函數(shù)調(diào)用,作為構(gòu)造函數(shù)調(diào)用,和使用 apply 或 call 調(diào)用。下面我們將按照調(diào)用方式的不同,分別討論 this 的含義。
1.作為普通函數(shù)調(diào)用
在普通函數(shù)里,this代表的是window對象
function test(){ alert(this); } test();
2.作為構(gòu)造函數(shù)調(diào)用
作用構(gòu)造函數(shù)調(diào)用的時候,它代表的是當(dāng)前對象。這個就和Java一樣了。
function Person(name,age){ this.name = name; this.age = age; }
以上所述是小編給大家介紹的JavaScript中的this關(guān)鍵字,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!
相關(guān)文章
JavaScript實現(xiàn)簡單網(wǎng)頁版計算器
這篇文章主要介紹了JavaScript實現(xiàn)簡單網(wǎng)頁版計算器,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-08-08原生Javascript封裝的一個AJAX函數(shù)分享
這篇文章主要介紹了原生Javascript封裝的一個AJAX函數(shù)分享,本文是實際項目中提取出來的,簡單易用,需要的朋友可以參考下2014-10-10網(wǎng)頁加載時頁面顯示進度條加載完成之后顯示網(wǎng)頁內(nèi)容
網(wǎng)頁加載時頁面顯示進度條(加載完成時顯示網(wǎng)頁內(nèi)容),這種效果在瀏覽網(wǎng)頁很常見,本文也介紹一種實現(xiàn)方法,需要了解的朋友可以參考下2012-12-12JavaScript獲取標(biāo)簽的幾種方式小結(jié)
本文主要介紹了JavaScript獲取標(biāo)簽的幾種方式小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02