学无止境,加油屌丝

js变量和函数提升

写在前面:

变量提升是 声明提升,初始化不会提升,比如说

var a=1;
console.log(a);

  

实际是这样执行(个人理解,仅供参考)

var a;
console.log(a);
a=1;

 

以下控制台输出undefined;证明是被提升,如果声明未被提升,会报错

    console.log(a);
    var a= 1;

 

函数提升同理,函数整个代码块提升,同样测试被复制的变量是不会提升

    foo();
    function foo() {
        console.log(1);
    }
    foo = function () {
        console.log(2);
    }

  

posted @ 2020-02-06 12:32  nofeel666  阅读(101)  评论(0)    收藏  举报