- 取值
用object.prop方式取值
var company = {
name: 'google',
age: '28',
money: 'I do not known'
}
company.name //'google'
- 用object['propname']
當屬性名不是一個有效的變量名時,只能使用這種方法獲取
var company = {
name: 'google',
age: '28',
money: 'I do not known',
'my-job': 'coding'
}
company['my-job'] // 'coding'
注意:定義一個Object時,屬性名盡量為有效的變量名,這樣便于取值
- 可以自由的添加刪除對象的屬性
var jake = {
name: '小明'
};
jake.age; // undefined
jake.age = 18; // 新增一個age屬性
jake.age; // 18
delete jake.age; // 刪除age屬性
jake.age; // undefined
delete jake['name']; // 刪除name屬性
jake.name; // undefined
delete jake.school; // 刪除一個不存在的school屬性也不會報錯
判斷Object的某個屬性是否存在
- in
var company = {
name: 'google',
age: '28',
money: 'I do not known'
}
'name' in company // true
'age' in company // true
- hasOwnProperty
var company = {...}
'name' in company // true
'toString' in company // true
in雖然能判斷屬性是否存在,但是對象繼承的屬性也會參與判斷,就導致上面這種情況,這時就需要使用hasOwnProperty
var company = {...}
company.hasOwnProperty('name') // true
company.hasOwnProperty('toString') // false