1 基本用法
Object.defineProperty(obj, prop, desc) - Object.defineProperty(Person, ‘name‘, {})
描述符:数据描述符、存取描述符,不能混合使用
数据描述符 --特有的两个属性(value,writable)
存取描述符 --是由一对 getter、setter 函数功能来描述的属性
数据描述符和存取描述均具有以下描述符
configrable 描述属性是否配置,以及可否删除
enumerable 描述属性是否会出现在for in 或者 Object.keys()的遍历中
var Book = {} var temp = null // Object.defineProperty 设置的属性默认值: writable:false, configurable:false, enumerable:false, Object.defineProperty(Book,‘name‘,{ value:‘hello‘, writable:true, configurable:true, enumerable:true, }) Object.defineProperty(Book,‘name111‘,{ get:function(){ console.log(‘get‘) return temp }, set:function(v){ temp = v console.log(‘set‘) }, configurable:true, enumerable:true, }) Book.name222 = ‘www‘
2 Vue 原理上的使用
原文:https://www.cnblogs.com/justSmile2/p/12132097.html