圖解javascript作用域鏈
來源:懂視網(wǎng)
責(zé)編:小采
時間:2020-11-27 21:56:14
圖解javascript作用域鏈
圖解javascript作用域鏈:先來一段簡單的javascript代碼: window.onload=function(){ function sub(a,b){ return a-b; } var result=sub(10,5); } 這段代碼中的執(zhí)行環(huán)境已經(jīng)數(shù)清楚了,可是執(zhí)行環(huán)境只是代碼在預(yù)編譯過程中javascript引擎所做的事情,當代碼在window
導(dǎo)讀圖解javascript作用域鏈:先來一段簡單的javascript代碼: window.onload=function(){ function sub(a,b){ return a-b; } var result=sub(10,5); } 這段代碼中的執(zhí)行環(huán)境已經(jīng)數(shù)清楚了,可是執(zhí)行環(huán)境只是代碼在預(yù)編譯過程中javascript引擎所做的事情,當代碼在window
先來一段簡單的javascript代碼:
window.onload=function(){
function sub(a,b){
return a-b;
}
var result=sub(10,5);
}
這段代碼中的執(zhí)行環(huán)境已經(jīng)數(shù)清楚了,可是執(zhí)行環(huán)境只是代碼在預(yù)編譯過程中javascript引擎所做的事情,當代碼在window onload事件被觸發(fā),且sub函數(shù)被執(zhí)行的時候會發(fā)生什么事情呢?
1.javascript引擎會在頁面加載腳本被執(zhí)行時為每個函數(shù)創(chuàng)建一個作用域(執(zhí)行上下文)及作用域鏈。
2.javascript引擎在產(chǎn)生這些作用域后,會創(chuàng)建一個堆棧。
3.將onload對應(yīng)的匿名函數(shù)壓棧
4.將sub函數(shù)壓棧
5.sub函數(shù)執(zhí)行完畢出棧
6.匿名函數(shù)出棧
整體圖解如下:
如有錯誤之處,歡迎批評指正。謝謝
聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com
圖解javascript作用域鏈
圖解javascript作用域鏈:先來一段簡單的javascript代碼: window.onload=function(){ function sub(a,b){ return a-b; } var result=sub(10,5); } 這段代碼中的執(zhí)行環(huán)境已經(jīng)數(shù)清楚了,可是執(zhí)行環(huán)境只是代碼在預(yù)編譯過程中javascript引擎所做的事情,當代碼在window