对象的新增特性
一、属性名及方法的简洁表示(key名与value名相同)
例如:
let name = 'zl';
let age = 18;
// ES5
var obj1 = {
name:name,
age:age,
run:function(){
console.log('快速跑!');
}
}
上述,是之前ES5的写法,接下来,用ES6写:
var obj2 = {
name,
age,
run(){console.log('快速跑!');}
}
代码更加简洁
二、Object.is()相当于全等,但是有区别
console.log(Object.is(1,1));
console.log(Object.is(NaN,NaN));
console.log(Object.is(0,-0));
三、Object.assign(obj1,obj2,obj3)合并对象
所有对象都会合并到obj1,如果是相同的属性,后边的对象的属性值会对前边的进行覆盖
四、Object.keys(obj)
将obj的key值返回一个纯数组
var obj2 = {
name,
age,
run(){console.log('快速跑!');}
}
console.log(Object.keys(obj2));
五、Object.values(obj)
将obj的value值返回一个纯数组
六、Object.entries(obj)
返回一个二维数组,每一个小数组都是一对【key,value】
console.log(Object.values(obj1));
console.log(Object.entries(obj1));