1. 程式人生 > >javaScript 預編譯過程淺嘗

javaScript 預編譯過程淺嘗

學習java undefine object java bsp 函數 mage javascrip asc

javaScript 預編譯過程

1.創建AO對象(Activation Object)

AO{

a:

}

2.找形參和變量聲明,將變量和形參作為AO屬性名,值為undefined

AO{

a:undefined

}

3.將實參形參相統一

AO{

a:2

}

4.在函數體內找函數聲明,值賦予函數體

AO{

a:function a(){}

}

為學習javaScript的預編譯過程,用了如下代碼來驗證:

技術分享圖片

在預編譯時,AO創建a,a先獲得undefined的值,然後形參實參相統一,a值為2,接著尋找方法體,獲得值function a(){}

從預編譯到執行a->undefined->2->function a(){}->1,所以

輸出結果:

技術分享圖片

javaScript 預編譯過程淺嘗