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.


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。