对象的合并
- Object.assign(目标对象,源对象1,源对象2);
- 注意O要大写
- 会修改目标对象,但不会修改源对象
- 原目标对象会替换目标对象的值,且后写的会覆盖先写的
var obj1 = { name: '小明', age: 18 };
var obj2 = { class: '一班', phone: 1333333333 };
var obj = Object.assign(obj1, obj2);
console.log('obj:', obj);
console.log('obj1:', obj1);
console.log('obj2:', obj2);
var obj3 = { name: '小明', age: 18 };
var obj4 = { name: '小明', age: 20 };
var obj5 = Object.assign(obj3, obj4);
console.log('obj5:', obj5);

返回对象属性名和属性值
- Object.keys()返回对象可枚举的属性名和方法名
var obj = { name: '小明', age: 18 };
var a = Object.keys(obj);
console.log('Object.keys(obj):', a);
var b = Object.values(obj);
console.log('Object.values(obj):', b);

判断对象是否包含某个属性以及销毁对象
- in,判断对象中是否包含某个属性
- 对象=null,销毁对象
var obj = { name: '小明', age: 18 };
var a = 'name' in obj;
console.log('name in obj:', a);
obj = null;
console.log('obj:', obj);
