【发布时间】:2020-07-28 13:46:12
【问题描述】:
最近我参加了前端开发的面试,面试官提出了一个问题,让我怀疑我对javascript的信心。问题是
function some() {
console.log(a) // undefined
console.log(b) // Reference Error: cannot access b before initialization.
var a = 10;
let b = 15
}
我知道这里发生了提升,但我不确定为什么 b 会抛出引用错误。谁能解释一下?
【问题讨论】:
-
@Akshay Bande:不,let 也会发生提升。但是在初始化之前是不可访问的。谷歌时间死区了解更多信息。
标签: javascript frontend referenceerror hoisting