一、this,其實可以類比成人
說到this的話,我們在js中主要研究的都是函數中的this,在javascript中,this代表當前行為的執行主體,而context代表的是當前行為執行的的環境(區域)。
例如男神在北理珠吃飯,這句話分別代表的含義如下
男神 -->> 主體(this)
吃飯 -->> 函數(function)
北理珠 -->> 環境(context)
-->>說明:吃飯是函數,男神是函數的主體,北理珠就是當前行為的執行環境(context),主體跟上下文沒有必然的聯系,主體只與函數有關系;就好像男神吃飯,其實哪里都可以吃飯,吃飯這個動作的主體永遠都是男神,環境是可以變化的。
-->>結論:上面,其實也可以說明,this指的是誰,和函數在哪里定義和執行是沒有任何關系的。
二、在函數中,如何區分this
1、函數執行,首先看函數名前面是否有“.” ,有的話, “.”前面是誰,this就是誰;沒有的話this就是window
//例子一 console.log(this); function eat() { console.log(this); //this->window } ~function() { eat(); //this->window }(); //例子二 function fn() { console.log(this); } var obj = {fn: fn}; fn(); //this->window obj.fn() //this->obj //例子三 function sum() { fn(); } sum(); //this->window //例子四 var oo = { sum: function() { console.log(this); fn(); } } oo.sum(); //首先sum函數里面,第一個輸出this為oo;之后執行fn(),this為window
另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。
本文名稱:JavaScriptthis在函數中的指向及實例詳解-創新互聯
分享網址:http://www.yijiale78.com/article0/cdieoo.html
成都網站建設公司_創新互聯,為您提供用戶體驗、響應式網站、企業建站、面包屑導航、網站制作、云服務器
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯