首页 > 当变量名和函数名相同的时候,标示符是函数还是变量

当变量名和函数名相同的时候,标示符是函数还是变量

    function change() {
        alert(typeof fn) // function
        function fn() {
        }
        var fn
    }
    change()

为什么不是undefined?


在js中函数的声明 比变量优先级要高
并且定义过程不会被变量覆盖 除非是赋值

//你的代码相当于
  function change() {
         function fn() {
        }
        var fn;
        alert(typeof fn) // function 不会被覆盖
        fn=1;
         alert(typeof fn) // 1   会覆盖
    }
    change()
【热门文章】
【热门文章】