1、const
1)const定义的是常量,不可修改
2)const的作用域只在当前代码块内有效,如果在代码块之外调用输出undefined
3)声明的作用域不会被提升
4)常量不能重复声明
5)申明的常量必须赋值
2、箭头函数
function a(){ ()=>{
} }
当()=>{}中的()只有一个参数的时候,可以省略,当{}中的表达式直接作为范围值的时候,也可以省略
eg:
let a = [1,2,3,4,5];
let add = a.map(function(b){
return b+1
});
等价于
let a = [1,2,3,4,5];
let add = a.map(b=>b+1);
3、扩展运算符...
4、var 和 let的区别
1)let作用域只局限于当前代码块
2)使用let声明的变量作用域不会被提升
var声明:
let声明:
3)let在相同的作用域下不能声明相同的变量
4)for循环体现let的父子作用域
定义5个按钮,实现当点击哪一个按钮的时候输出点击第几个按钮
01.以下方案无论点击哪一个按钮都会输出“点击了第5个按钮”,因为for循环是同步事件,事件触发是异步事件。
02.闭包的方式解决
03.let方式
1和2分别为两个作用域
04
.
没有方框里的内容时,输出的是0,1,2,3,4,5
因为console.log(i)的作用域没有被定义。
当加入方框内容之后,里面的作用域不受外面作用域的影响,输出的是5个20
5、es6创建集合,集合可以去重
集合有一个属性size,四个主要方法,add、delete、has、clear