对象:由若干键值对组成的数据集合

//对象表示,和ruby中hash对象一致
var xiaoming = {
    name: '小明',
    birth: 1990,
    school: 'No.1 Middle School',
    height: 1.70,
    weight: 65,
    score: null
};

//获取对象的属性值
xiaoming.name; // '小明'
xiaoming.birth; // 1990

//若属性包含特殊字符,需要通过['name']的方式获得对象的属性值
var xiaohong = {
    name: '小红',
    'middle-school': 'No.1 Middle School'
};
xiaohong['middle-school']; // 'No.1 Middle School'
xiaohong['name']; // '小红'
xiaohong.name; // '小红'

//访问属性不存在
xiaoming.age; // undefined

//对象添加或删除属性
var xiaoming = {
    name: '小明'
};
xiaoming.age; // undefined
xiaoming.age = 18; // 新增一个age属性
xiaoming.age; // 18
delete xiaoming.age; // 删除age属性
xiaoming.age; // undefined
delete xiaoming['name']; // 删除name属性
xiaoming.name; // undefined
delete xiaoming.school; // 删除一个不存在的school属性也不会报错

//使用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方法也会返回true
'toString' in xiaoming; // true
//使用hasOwnProperty()返回的对象独有的属性
var xiaoming = {
    name: '小明'
};
xiaoming.hasOwnProperty('name'); // true
xiaoming.hasOwnProperty('toString'); // false

results matching ""

    No results matching ""