美文网首页
Javascript中变量声明的提升

Javascript中变量声明的提升

作者: TingsLee | 来源:发表于2016-08-29 18:16 被阅读0次

    对于所有的变量,无论在函数体的何处进行声明,都会在后台被提升到函数的顶部。

    1.对于非函数变量

    var str = 'hello world'; (function() { console.log(str); //undefined var str = "hello javascript"; })();

    PS: 只提升变量的声明,并不会把赋值也提升上来,
    所以在声明变量时最好在相应作用域的顶部声明并赋值

    2.函数提升

    foo(); //hello world console.log(bar); //undifined bar(); //error:bar is not a function function foo() { //函数声明和定义都会被提升 console.log("hello world"); } var bar = function() { //函数表达式只有声明会被提升,但是定义不被提升 console.log("hello javascript"); };

    相关文章

      网友评论

          本文标题:Javascript中变量声明的提升

          本文链接:https://www.haomeiwen.com/subject/azzxettx.html