m为什么显示undefined?

这里的m没有变量提升吗?

相关代码

foo()
function foo(){
    console.log(m) //undefined
    var m = 20
    var name = 'foo'
    console.log(name) //foo
}
阅读 1.4k
1 个回答

再仔细看下变量提升的定义

JavaScript 只会提升声明,不会提升其初始化。如果一个变量先被使用再被声明和赋值的话,使用时的值是 undefined。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题