- 1对象属性的访问和修改
- obj.propertyName:使用点号访问对象的属性
- obj['propertyName']:使用方括号访问对象的属性,可以使用变量作为属性名
- obj.propertyName = newValue:修改对象的属性值
- 2对象属性的增加和删除
- obj.newPropertyName = value:增加一个新属性并赋值
- delete obj.propertyName:删除对象的某个属性
- 3遍历对象的属性
- for...in 循环:遍历对象的所有可枚举属性
- Object.keys(obj):返回对象的所有可枚举属性的属性名组成的数组
- Object.getOwnPropertyNames(obj):返回对象的所有属性(不包括继承的)属性名组成的数组
- 4检查对象是否包含某个属性
- obj.hasOwnProperty(propertyName):判断对象自身是否包含某个属性
- propertyName in obj:判断对象及其原型链是否包含某个属性
- 5其他操作对象的方法
- Object.assign(target, ...sources):将一个或多个源对象的属性复制到目标对象中
- Object.create(proto, [propertiesObject]):创建一个新对象,使用现有对象作为新对象的原型
- Object.freeze(obj):冻结一个对象,使其属性无法修改
- Object.seal(obj):封闭一个对象,使其属性无法添加或删除,但可以修改属性值