首页 > 代码库 > JS中函数名与变量名冲突

JS中函数名与变量名冲突

在JS中如果函数名与变量名冲突,JS是怎么执行的。。。

        function a(){

            console.log(12);

        }

        a()

        var a = 10;

        console.log(a);

    JS会先把变量的声明放在最前面,然后将定义式函数放在变量声明的后面,后面赋值语句按原来的顺序I依次执行.

    因此上面的代码等价于

    var a;

    function a(){

         console.log(12);

     }

    a();

    a = 10;

    console.log(a);

    因此结果是12   10.


JS中函数名与变量名冲突