let a=a;之后使用let a 还会报错(a is not defined)

function displaySelectUser(){    
            let a=a;
            a=1;
            console.log("617:"+a);
}
后面无论使用var  const 重新定义初始化都无法使用

如果 let x 的初始化过程失败了,那么

  1. x 变量就将永远处于 created 状态。
  2. 你无法再次对 x 进行初始化(初始化只有一次机会,而那次机会你失败了)。
  3. 由于 x 无法被初始化,所以 x 永远处在暂时死区!(所谓暂时死区,就是不能在初始化之前,使用变量。)
  4. 有人会觉得 JS 坑,怎么能出现这种情况;其实问题不大,因为此时代码已经报错了,后面的代码想执行也没机会。

所谓的-----js封禁------

posted @ 2019-06-14 17:52  景、  阅读(580)  评论(0编辑  收藏  举报