var let const

not defined是引用错误
undefined是值
会先进行语法分析,报错

通过 var 声明的变量和 let 或 const 声明的变量,在创建相应作用域的词法环境阶段,都会注册标识符,但仅通过 var 声明的变量存在会变量提升,若在通过 let 或 const 声明了变量的(块)作用域中,先使用再声明该变量,就会抛出错误:

你可能感兴趣的:(var let const)