var target={};Object.defineProperties(target,{ // 对象的key 为target的key名称 // value是一个选项 ObjectdefineProperty age:{ set:function(a){ var a=age.value; console,log('有人来设置你了,值为:'+a) a=99 return a; } }, sex:{ value:'男' }})console.log(target.age)console.log(target)
1 回答
HUWWW
TA贡献1874条经验 获得超12个赞
<script>
//初始化变量
var target = {};
//下面这段可以屏蔽
Object.defineProperties(target, {
sex: {
value: '男'
},
})
//对Object对象进行扩展方法
Object.prototype.setObjectAttrbute = function(key,value){
console.log('有人来设置你了,值为:' + value)
return this[key] = value;
}
//再封装一层
Object.prototype.setAge = function(value){
return this.setObjectAttrbute("age",value);
}
//查看修改前属性
console.log(target.age);
//执行方法,两种方法结果一样
console.log(target.setObjectAttrbute("age",99));
console.log(target.setAge(99));
//查看新的target
console.log(target);
</script>
添加回答
举报
0/150
提交
取消