var mi = {   
  name: '小明',   
  birth: 1990,    
  school: 'No.1 Middle School',    //  如果有特殊字符要用引号 eg: 'school-name':'xxx' 引用时 mi['school-name']
  height: 1.70,    
  weight: 65,    
  core: null
};
第一种属性获取方法: mi['name'];  // '小明'
第二种属性获取方法:mi.name;      // '小明'

访问miname属性,mi.name的写法更简洁。我们在编写JavaScript代码的时候,属性名尽量使用标准的变量名,这样就可以直接通过object.prop的形式访问一个属性了。


也可以添加 删除属性

增加:
mi.age; // undefined
mi.age = 18; // 新增一个age属性
mi.age  //输出18
删除:
delete mi.age;
mi.age  //undefined

如果我们要检测xiaoming是否拥有某一属性,可以用in操作符:

'name' in mi; // true
'grade' in mi; // false

不过要小心,如果in判断一个属性存在,这个属性不一定是mi的,它可能是mi继承得到的:

'toString' in mi; // true

因为toString定义在object对象中,而所有对象最终都会在原型链上指向object,所以mi也拥有toString属性。

要判断一个属性是否是mi自身拥有的,而不是继承得到的,可以用hasOwnProperty()方法:

mi.hasOwnProperty('name'); // true
mi.hasOwnProperty('toString'); // false