对象操作

2019-12-19  本文已影响0人  混吃等死小前端

对象操作

1、添加属性、删除属性

var xiaoming = {
    name: '小明'
};
xiaoming.age; // undefined,说明没有age这个属性
xiaoming.age = 18; // 新增一个age属性
xiaoming.age; // 18

delete xiaoming.age; // 删除age属性
xiaoming.age; // undefined

delete xiaoming.school; // 删除一个不存在的school属性也不会报错

2、in:检测对象是否拥有某一属性(包括继承到的)

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继承得到的:

'toString' in xiaoming; // true

因为toString定义在object对象中,而所有对象最终都会在原型链上指向object,所以xiaoming也拥有toString属性
3、hasOwnProperty():检测对象是否拥有某一属性(只属于自身,不包括继承到的)

var xiaoming = {
    name: '小明'
};
xiaoming.hasOwnProperty('name'); // true
xiaoming.hasOwnProperty('toString'); // false

4、未完待续

上一篇 下一篇

猜你喜欢

热点阅读