一.let与var的区别
1.let不存在变量声明.
2.let只在所在的块级作用域有效.
3.let不能重复声明.
二.常量(const)
1.声明常量,常量一旦声明不能修改。
2.常量一旦声明必须给初始值.
3.const也存在块级作用域.
三.解构赋值
1.数组的解构赋值.
2.对象的解构赋值.
3....(拓展运算符)
四.箭头函数
注意事项:
1.箭头函数没有arguments.
2.箭头函数不能当作构造函数.
3.call'、bind、apply在箭头函数里面不能修改this指向.
4.This指向的问题,定义函数所在的对象,不是运行时所在的对象。es5里面的this指向的问题,这个函数必须运行,如果不运行就不能确定this的指向问题。es6则是当你定义函数时this就已经确定,是外层函数的this指向.this指向一旦确定就无法修改。
5.不可以使用yield命令,因此箭头函数不能用作Generator函数.
五.数组的方法
es5里面数组循环的方法有:
1.forEach与for相似,arr.forEach(function(item,index,arr){console.log(item,index)})
2.map如果不return用法与forEach一样如果return返回值 为一个新数组,不改变原来数组
3.filter
4.some,every
对数组元素进行指定函数的逻辑判断
返回值为boolean
5.reducer
对数组元素进行循环
用法:arr.reducer(function(pre,cur,index,arr){console.log(pre,cur,index)})