1、let和var相同只是它
声明的变量只在它所在的代码块有效。它所声明的变量一定要在声明后使用,否则报错。
2、 let
块级作用域。 函数只能在顶层作用域和函数作用域之中声明,不能在块级作用域声明。
3、块级作用域可以变为表达式,也就是说可以返回值,办法就是在块级作用域之前加上do
,使它变为do
表达式。
let x = do {
let t = f();
t * t + 1;
};
4、ES6的六种声明变量方法:var 、 function 新加的 let 、 const 、import 和class
5、数组的解构赋值:只要等号两边的模式相同,左边的变量就会被赋予对应的值。元素是按次序排列的,变量的取值由它的位置定;
let [foo, [[bar], baz]] = [1, [[2], 3]];
foo // 1
bar // 2
baz // 3
let [ , , third] = ["foo", "bar", "baz"];
third // "baz"
let [x, , y] = [1, 2, 3];
x // 1
y // 3
let [head, ...tail] = [1, 2, 3, 4];
head // 1
tail // [2, 3, 4]
let [x, y, ...z] = ['a'];
x // "a"
y // undefined
z // []
6、对象的解构赋值:对象的属性没有次序,变量必须与属性同名,才能取到正确的值。
7、