一、对象的定义、赋值
经常使用的定义与赋值的方法:obj.prop = value 或 obj['prop'] = value
let Person = {};
Person.name = "Jack";
Person["gender"] = "female";
console.log(Person.name); // Jack
console.log(Person.gender); // female
console.log(Person); // {name: 'Jack', gender: 'female'}
二、Object.defineProperty()语法说明
Object.defineProperty()
的作用是在一个对象上定义一个新属性、修改一个已经存在的属性
Object.defineProperty(obj, prop, desc)
- obj 需要定义属性的当前对象
- prop 当前需要定义的属性名
- desc 属性描述符
三、属性描述符
通过Object.defineProperty()为对象定义属性,有两种形式:数据描述符、存取描述符。 且不能混合使用。
1. 数据描述符 --特有的两个属性(value,writable)
注意:当使用了writable和value属性,不允许使用getter或setter这两个方法