一:属性访问
方式一:点语法
例如:
var newObj = {
name:"Join",
age:18,
getName :function () {
return this.name;
}
}
console.log(newObj.name);
console.log(newObj.getName());
方式二:通过使用object[propertyName] (对象[属性名])
console.log(newObj['name']);
一般情况下,使用最多的是第一种方式,即:点语法。但是,当你使用动态属性名称并且当属性名必须包含js不支持的字符时,就不能使用点了,此时方式二变得非常有用。
二:检测xiaoming
是否拥有某一属性。可以用in
操作符或者 hasOwnProperty()
方法。
var xiaoming = {
name: '小明',
birth: 1990,
school: 'No.1 Middle School',
height: 1.70,
weight: 65,
score: null
};
'name' in xiaoming; // true
'grade' in xiaoming; // false
如果in
判断一个属性存在,这个属性不一定是xiaoming
的,它可能是xiaoming
继承得到的:
要判断一个属性是否是
xiaoming
自身拥有的,而不是继承得到的,可以用
hasOwnProperty()
方法:
var xiaoming = {
name: '小明'
};
xiaoming.hasOwnProperty('name'); // true
xiaoming.hasOwnProperty('toString'); // false