数据属性
- configurable
- 属性是否可以通过 delete 删除并重新定义
- 是否可以修改他的特性(属性是否可以被配置)
- 是否可以把它改为访问器属性
- 默认 true
- enumerable 属性是否可以通过 for-in 循环返回 默认true
- writable 属性值是否可以被修改 默认 true
- value 属性的实际值
- 在属性被定义为不可配置之后,就不能再修改除了writable之后的值了!!!!
- configurable
- enumerable
- get 读取该属性时调用 get 并返回结果
- set (newvalue) 修改该属性时会将修改的值传入 set
- Object.defineProperty 定义单个属性
// 使用这种方法不定义 configurable enumerable writable时,会默认为falseObject.defineProperty(obj,key,{configurable:true,enumerable:true,writable:true,value:"value" }) // getter 和 setter 的使用 Object.defineProperty(obj,key,{ // get会在该属性被读取时调用get(){return this.key},// set 会在该属性被修改时调用set(newValue){this.key = newValue} }) - Object.defineProperties 定义多个属性
【对象及defineProperty 方法】let book = {} // 使用这种方法不定义 configurable enumerable writable时,会默认为falseObject.defineProperties(book,{edition:{value:1,writable:true},year_:{value:2017},year:{get(){return this.year_},set(newValue){if(newValue > 2017){this.year_ = newValue;this.edition += (newValue - 2017)console.log(this.edition);}}}})
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
