首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Errors: Cant access lexical declaration before init

信息

代码语言:javascript
复制
ReferenceError: can't access lexical declaration `X' before initialization (Firefox)
ReferenceError: 'x' is not defined (Chrome)

错误类型

ReferenceError

哪里错了?

一个词法变量在被初始化之前被访问。这发生在任何块语句中,let或者在const声明被定义之前被访问。

示例

错误示例

在这种情况下,变量“foo”在块语句中使用重新声明let

代码语言:javascript
复制
function test() {
  let foo = 33;
  if (true) {
    let foo = (foo + 55); 
    // ReferenceError: can't access lexical 
    // declaration `foo' before initialization
  }
}
test();

有效的情况

要更改if语句中的“foo”,您需要删除let导致重新声明的内容。

代码语言:javascript
复制
function test(){
   let foo = 33;
   if (true) {
      foo = (foo + 55);
   }
}
test();

扫码关注腾讯云开发者

领取腾讯云代金券

http://www.vxiaotou.com