1:声明对象的两种语法
// 第一种方式:此方式为简写
let objA = { 'name':'obja', 'dob':'2021-1-1'}
// 第二种方式:此方式为正统写法
let objB = new Object({'name':'objb', 'dob':'2021-1-2'})
2:如何删除对象的属性
let objA = { 'name':'obja', 'dob':'2021-1-1'}
delete objA['dob']
3:如何查看对象的属性
let objA = { 'name':'obja', 'dob':'2021-1-1'}
// 查看所有对象内的键
Object.keys(objA);
// 查看所有对象内的值
Object.values(objA);
// 查看所有对象内的键值对
Object.entries(objA);
// 打印所有对象内的键值对
console.log(objA);
示例:
objA['name'];
obj.name;
示例:
4:如何修改或增加对象的属性
objA['name'] = 'heiheihei';
objA.name = 'heiheihei';
// 批量赋值
Object.assign(objA, {age:18. gender:'male'});
5:‘name’ in obj和obj.hasOwnProperty(‘name’) 的区别
‘name’ in obj 不仅会查看在当前属性中有没有定义存在,且会向上原型链中查找,直到根原型对象,还没有就返回false,
obj.hasOwnProperty(‘name’) 是仅在当前对象中查找是否存在name属性,不会向上查找