1. 程式人生 > >js預編譯規則

js預編譯規則

func test pan var 統一 變量 gpo color undefine

1.創建一個AO對象

2.找形參、變量聲明,把形參、變量聲明的名作為AO對象的屬性名,值為undefined

3.實參形參相統一,即把與形參相對應的實參的值賦給AO對象中相應的屬性

4.找函數聲明,把函數聲明的名作為AO對象的屬性名,把整個函數塊賦給對應的屬性

function test(a,b) {
    console.log(a)
    c=0;
    var c;
    a=3;
    b=2;
    console.log(b);
    function b() {};
    function d() {};
    console,log(b);
}

test(1)                 //
1,2,2

1.AO{

}

2.AO{
a:undefined,
b:undefined,
c:undefined,
}

3.AO{
a:1,
b:undefined,
c:undefined,
}

4.AO{
a:1,
b:function() b{},
c:undefined,
d:function() d{}
}

js預編譯規則