let命令的介绍
let是ECMAScript6中新增的关键字,用于声明变量
它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。
let变量的声明
let 命令的特点不允许在同一作用域下声明已经存在的变量,也就是不能重复声明(不允许多个变量的变量名相同)
// var a = 1; // var a = 3;//重复声明变量不会报错 // let b = 4; // let b = 6;//会报错:Identifier 'b' has already been declared (变量名已经存在) var a = 2; let a = 3; //这样也会报错:SyntaxError: Identifier 'a' has already been declared
let 命令的特点—没有预解析
console.log(a)//不会报错,会显示a这个变量的值为undefined var a = 1; console.log(b)//会报错:b is not defined(…),该变量未定义 let b = 4;
let 命令的特点—块级作用域
一对{}包括的区域成为代码块,块级作用域指一个变量或者函数只有在该区域才起作用
{ let a = 10; var b = 1; } console.log(a) // ReferenceError: a is not defined. console.log(b) // 1