目录
Object.defineproperty方法 - 添加属性
1、如何解决Object.defineProperty 添加的属性不能枚举问题?- enumerable
2、如何解决Object.defineProperty 添加的属性不能修改问题?- writable
3、如何解决Object.defineProperty添加的属性无法被删除?- configurable
Object.defineProperty方法的get属性(getter函数)
Object.defineProperty方法的set属性(setter函数)
Object.defineproperty方法 - 添加属性
Object.defineproperty有三个参数
1、添加属性的对象
2、添加什么属性
3、配置项 (是一个对象)
特点:
1、添加的属性不能枚举(无法遍历)
2、添加的属性不能修改
3、无法通过delete.对象.属性方式删除属性
1、添加的属性不能枚举(无法遍历)案例:
<script>
// 要求添加一个age属性为18
let person={
name:"李四",
sex:"女",
// 方法一:可以直接在对象里添加属性
// age:18
}
// 方法二:通过 Object.defineProperty方法添加
Object.defineProperty(person,'age',{
value:18
})
// Object.defineProperty 添加的属性不能枚举(无法遍历)
for(key in person){
// 打印person的key中没有age
console.log(person[key])
}
</script>
2、添加的属性无法修改案例:
3、添加的属性无法被删除案例: