在总结ES6之前,告诉大家一个好的网站,叫掘金网。
1 | // 例子一 |
1 | { |
1 | console.log(a) |
1 | console.log(a); // ReferenceError: a is not defined |
1 | var a = 123; |
注意:ES6明确规定,如果区块中存在let和const命令,这个区块对这些命令声明的变量,从一开始就形成了封闭作用域,凡是在声明之前就使用这些变量,就会报错。
1 | typeof a; // ReferenceError: a is not defined |
1 | let msg = 'hello'; |
1 | if(!String.prototype.includes){ |
1 | let msg = 'hello'; |
1 | let msg = 'hello'; |
1 | let msg = 'hello'; |
1 | let arr = [1,2,3]; |
1 | let arr = [1,2,3]; |
1 | let x = 1; |
1 | // 例1 |
1 | let name = 'dai'; |
1 | let {name: name,age: age} = {name: 'daipi173',age: 10}; |
1 | let {name: name1,age: age1} = {name: "daipi173",age: 22}; // 这里面的name1和age1是变量 |
1 | let name1,age1; |
1 | let name1,age1; |
1 | function fn(value){ |
1 | // 例1 |
注意:匹配模式:看左边与右边能否对应上。
如:
1 | let [a,b,[c,d]] = [1,2,3]; // 报错,其原因就是因为左右两边没有匹配上 |
再给大家举一个例子:
1 | let {age: [a,b,c]} = {age: [1,2,3]}; |