一、 箭头函数
1. ES6函数变换
(1) 函数可以传入默认参数
function show({x=0,y=0}={}){
console.log(x,y);
};
show();
(2) 函数参数默认已经定义,不能再使用let,const声名
function show(a=18){
let a=101; //错误
console.log(a);
};
show();
(3) 扩展运算符,rest运算符 ··· 传参数
2. 箭头函数
(1) this指向函数定义所在对象,不再是运行时所在的对象。
(2) 箭头函数没有arguments,用…扩展运算符代替。
(3) 箭头函数不能当构造函数。
二、 对象
1. 对象的简洁写法
(1) 可以不写属性名,直接写属性值。
(2) 简写的对象方法不能用作构造函数。
2. 比较两者是否相等
Object.is(‘a’,‘a’);
3. 合并对象\复制对象
Object.assign ();
4. 对象属性的遍历
(1) for…in
for…in循环遍历对象自身的和继承的可枚举属性(不含 Symbol 属性)。
(2) Object.keys(obj)
Object.keys返回一个数组,包括对象自身的(不含继承的)所有可枚举属性(不含 Symbol 属性)的键名。
(3) Object.getOwnPropertyNames(obj)
Object.getOwnPropertyNames返回一个数组,包含对象自身的所有属性(不含 Symbol 属性,但是包括不可枚举属性)的键名。
(4) Object.getOwnPropertySymbols(obj)
Object.getOwnPropertySymbols返回一个数组,包含对象自身的所有 Symbol 属性的键名。
(5) Reflect.ownKeys(obj)
Reflect.ownKeys返回一个数组,包含对象自身的(不含继承的)所有键名,不管键名是 Symbol 或字符串,也不管是否可枚举。