按变量更新属性方法

时间:2012-07-04 13:42:55

标签: javascript oop

我想通过名为this code的方法更改对象的属性:

MAP = MAP || {
   level: 0
   updateProperty(property, value){
        if (this.hasOwnProperty(property){
          this.property = value
        }
   }
}

但是当我触发此代码时,我在对象中创建名为“property”的新属性。但我想把“财产”视为变量,而不是新财产!

1 个答案:

答案 0 :(得分:3)

你可能想要这个(方括号this[property] = value;

var MAP = MAP || {};
MAP = {
    level: 0,
    updateProperty(property, value) {
        if (this.hasOwnProperty(property)) {
            this[property] = value;
        }
    }
};