为了账号安全,请及时绑定邮箱和手机立即绑定

请问在js中Object.defineProperty中莫名报错是怎么回事?怎么解决?

请问在js中Object.defineProperty中莫名报错是怎么回事?怎么解决?

胡说叔叔 2022-01-05 11:07:17
let a= {age: 10};Object.defineProperty( a,'age',{get:function() {console.log(age);},set:function(newData) {console.log(newData)}})然后我执行a.age就报错 age is not defined
查看完整描述

2 回答

?
繁华开满天机

TA贡献1816条经验 获得超4个赞

get方法里,不能直接使用age作为输出,而需要使用a.age。
需要把:
console.log(age);
更换成:
console.log(a.age);

是不是这样更改更合理些?
let a = {age: 2};
let temp = 1;
Object.defineProperty( a,'age',{
get:function() {
return temp;
},
set:function(newData) {
temp = newData;
}
});
a = {
age: 10
};
console.log(a.age);



查看完整回答
反对 回复 2022-01-09
?
慕的地6264312

TA贡献1817条经验 获得超6个赞

这种情况可能是网络的问题。

查看完整回答
反对 回复 2022-01-09
  • 2 回答
  • 0 关注
  • 325 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信