下面的代码执行一个无限循环(打印getter1
一次,然后getter2
,直到停止):由于两个getter造成的无限循环?
var person1 = {
_age: 42,
get age() {
console.log("getter1");
return this._age;
}
};
Object.defineProperty(person1, "_age", {
get: function() {
console.log("getter2");
return this._age;
}
});
console.log(person1.age); // true
什么原因呢? (注意:我知道我宣布了两个不同的获得者)。
第二吸气获取自身... – adeneo