在平时开发的时候,灵活地使用ES6语法可以使开发者减少代码量,提高效率。这里列举的是我们在开发过程中常使用ES6特性
- let / const
- 箭头函数
- 默认参数
- 结构赋值
- 扩展运算符
- 类
- 字符串
- 数组
- Promise
在了解let/const之前,我们先来看下
var应用
1、重复声明
var a = 1
var a = 2
console.log(a) //此时会因为重复声明而输出最后一个a的值,结果为2
2、声明提前
console.log(b)
var b=2
由于var定义变量存在声明提前,整个运行过程变为
var b
console.log(b)
b=2
3、不能定义常量
4、没有块级作用域
let的应用
1、不能重复声明
2、可以修改
3、存在块级作用域
4、不存在预解析变量
const的应用
1、不能重复声明
2、不可以修改
3、存在块级作用域
4、不存在预解析变量
箭头函数
两种形式:
当参数只有一个的时候,()可以省略
当参数只有一个return的时候,{ }可以省略
我们来看下具体的例子
//普通函数
function peopele(){
}
//箭头函数1
let people=()=>{
}
//箭头函数2
()=>{
}
下面的箭头函数的几个特点
1、箭头函数作为匿名函数,不能作为构造函数,不能使用new
var people = () => {
console.log("ok");
};
var xiaoming = new people(); //此时会报错,TypeError: people is not a constructor
2、箭头函数不绑定自己的arguments,而是使用rest参数
var student = a => {
console.log(arguments);
};
student(3);//报错
使用rest参数,如下
var teacher = (...c) => {
console.log(c);
};
teacher(3); [3]
3、箭头函数会捕获所在上下文的this,作为自己的this值
未完待更....