【问题标题】:does this variable get hoisted no matter what?这个变量无论如何都会被提升吗?
【发布时间】:2013-03-26 22:18:37
【问题描述】:

即使 false 块中的代码永远不会被执行,var foo 是否也会被提升到堆栈顶部?

function foo(){
    if ( false ) {
       var foo = 'bar'; //will this be hoisted even if its never executed?
    }
}

我看到它现在是并且只是感到困惑......我没想到它会被包裹在虚假的状态中。

【问题讨论】:

  • 是的,另外,foo() 内部的 if 条件前后 foo 是未定义的。

标签: javascript hoisting


【解决方案1】:

是的;提升发生在代码运行之前,所以if 语句是否出现truefalse 尚不清楚。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-22
    • 1970-01-01
    • 2015-12-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多