声明对象的两种语法
let obj = { 'name':'zhangsan','age':18}
let obj2 = new Object({'name':'wangwu','age':22})
如何删除对象的属性
delete obj.name
delete obj2['name']
- 查看一个属性是否在对象中
'age' in obj === false
- 含有属性名,但是值为 undefined
'obj2' in obj && obj.age === undefined
如何查看对象的属性
- 查看自身+共有属性
console.dir(obj)
- 判断一个属性是自身的还是共有的
obj. hasOwnProperty('toString')
- 查看属性
obj['age']
obj.age
如何修改或增加对象的属性
- 修改自身
obj['age'] = 19
- 批量改自身/赋值
Object.assign(obj, {age: 18, gender: 'man'})
- 改共有属性
Object.prototype.toString = 'abc'
- 改原型
let obj = Object. create(common)
'name' in obj 和 obj.hasOwnProperty('name') 的区别
'name' in obj 是查看name属性是否存在于obj对象中 obj.hasOwnProperty('name')是查看obj中的name属性是共有属性还是自身属性