1. 声明对象的两种语法
第一种写法如下:
let obj = {'name';'frank','age':18} //简写
第二种写法如下:
let obj = new Object({'name';'frank','age':18}) //正规写法
细节
- 键名是字符串,不是标识符。
- 引号是可以省略的。
2. 如何删除对象的属性
例
let obj = {'name';'frank','age':18}
delete obj.name
或delete obj['name']
即可删除obj
的name
属性
请区分属性值为(undefined)和(不含属性名)
3. 如何查看对象的属性
查看所有属性 例
let obj = {'name';'frank','age':18}
Object.keys(obj)
查看自身+共有属性
let obj = {'name';'frank','age':18}
console.dir(obj)
或者自已依次用Object.keys
打印出 obj.__proto__
(不推荐)
4. 如何修改或增加对象的属性
例
let obj = {name:'frank'}
obj.name = 'frank'
obj['name'] = 'frank'
批量赋值
例
Object.assign (obj,{agr:18,gender:'man'})
5. 'name' in obj和obj.hasOwnProperty('name') 的区别
-
in
查看自身所有属性会判断共有属性。 -
hasOwnProperty
只查看自身属性不包括共有属性。