本文實(shí)例形式詳細(xì)分析了JavaScript this綁定過程。分享給大家供大家參考,具體如下:
成都創(chuàng)新互聯(lián)專業(yè)為企業(yè)提供休寧縣網(wǎng)站建設(shè)、休寧縣做網(wǎng)站、休寧縣網(wǎng)站設(shè)計、休寧縣網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計與制作、休寧縣企業(yè)網(wǎng)站模板建站服務(wù),十余年休寧縣做網(wǎng)站經(jīng)驗,不只是建網(wǎng)站,更提供有價值的思路和整體網(wǎng)絡(luò)服務(wù)。在理解this 的綁定過程之前,首先要理解調(diào)用位置:調(diào)用位置就是函數(shù)在代碼中被調(diào)用的位置(而不是聲明的位置)。只有仔細(xì)分析調(diào)用位置才能回答這個問題:這個this 到底引用的是什么?通常來說,尋找調(diào)用位置就是尋找“函數(shù)被調(diào)用的位置”,但是做起來并沒有這么簡單,因為某些編程模式可能會隱藏真正的調(diào)用位置。最重要的是要分析調(diào)用棧(就是為了到達(dá)當(dāng)前執(zhí)行位置所調(diào)用的所有函數(shù))。我們關(guān)心的調(diào)用位置就在當(dāng)前正在執(zhí)行的函數(shù)的前一個調(diào)用中。
下面我們來看看到底什么是調(diào)用棧和調(diào)用位置:
function baz() { // 當(dāng)前調(diào)用棧是:baz // 因此,當(dāng)前調(diào)用位置是全局作用域 console.log( "baz" ); bar(); // <-- bar 的調(diào)用位置 } function bar() { // 當(dāng)前調(diào)用棧是baz -> bar // 因此,當(dāng)前調(diào)用位置在baz 中 console.log( "bar" ); foo(); // <-- foo 的調(diào)用位置 } function foo() { // 當(dāng)前調(diào)用棧是baz -> bar -> foo // 因此,當(dāng)前調(diào)用位置在bar 中 console.log( "foo" ); } baz(); // <-- baz 的調(diào)用位置
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。