es6知识点

38 阅读1分钟

一.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返回值 为一个新数组,不改变原来数组
image.png
3.filter
image.png
4.some,every
对数组元素进行指定函数的逻辑判断
image.png
返回值为boolean
5.reducer
对数组元素进行循环
用法:arr.reducer(function(pre,cur,index,arr){console.log(pre,cur,index)})