【发布时间】:2011-06-13 01:53:49
【问题描述】:
我有这个问题: 我用 json 模型制作了一个“通用”对象来威胁。 我需要通过他的“字符串名称”引用这个模型的属性。 问题是该属性是值类型而不是对象类型,所以我丢失了引用并且更改不会被传播。
例子:
function Manager(json){this.JsonModel = json;}
Manager.prototype.Increment = function(propertyName){
this.JsonModel[propertyName]++;
}
var manager = new Manager({"a" : 5});
alert(manager.Increment("a"));
好的,但是这种情况呢:?
var manager = new Manager({"a" : {"a1" : 5 }});
alert(manager.Increment("a.a1"));
我怎样才能更好地做到这一点?
Tnx 很多。
【问题讨论】:
-
为了清楚起见:这里没有JSON,JSON只是一个对象的字符串表示;你在这里处理的是纯 JavaScript 对象,用对象字面量表示法 (≠ JSON)。
-
Tnx Marcel Korpel:我的错误:你是对的!
标签: javascript generics properties pass-by-reference