var
声明提升
console.log(num); // undefined
var num = 123;
变量覆盖
var num1 = 12;
var num1 = 13;
console.log(num1); // 13
没有块级作用域
function fn() {
for (var i = 0; i < 3; i++) {
console.log(i);
}
console.log(i);
}
fn();
const
1.const声明之后必须赋值 否则报错
2.定义的值不能修改,否则报错
3.支持let的其他属性
const demo = 123;
解构相关
let a = 1;
let b = 2;
[a, b] = [b, a];
console.log(a);
console.log(b);
数组去重
let arr = [12, 43, 23, 12, 43, 55];
let item = [...new Set(arr)];
console.log(item); // [12,43,55]