我知道如何使用JS的getter和setter来处理对象属性,就像这样:
var myObject = {
value : 0,
get property() {
return this.value;
},
set property(v) {
this.value = v;
}
}
这里有一个问题,如果调用
myObject.property = 2
来设置myObject.value
,那么我想知道是否有一种方法可以调用myObject = 2
并仍然设置myObject.value
,而不是将myObject
从对象更改为数字。可能不可能,但JavaScript是一种非常灵活的语言,我想在放弃这个想法之前向社区提出这个问题。
myObject
是一个引用,将其重新赋值给其他东西会...好吧,就是将其重新赋值给其他东西。 - Dave NewtonDefineOwnProperty
方法,但只用于创建函数参数时。你能得到的最接近的东西是在window
上使用DefineProperty
。 - Derek 朕會功夫