2
我想使用字符串选择器设置对象属性。我有一个字符串model.name
,我有一个对象来存储值。而不是存储在object[model.name]
中的值,我想将其存储在object[model][name]
。使用字符串选择器设置javascript属性
这怎么可以用javascript/jQuery或JavaScript/jQuery插件来完成?
我想使用字符串选择器设置对象属性。我有一个字符串model.name
,我有一个对象来存储值。而不是存储在object[model.name]
中的值,我想将其存储在object[model][name]
。使用字符串选择器设置javascript属性
这怎么可以用javascript/jQuery或JavaScript/jQuery插件来完成?
function setObjectPathValue(source, path, value) {
var parts = path.split('.'), len = parts.length, target = source;
for (var i = 0, part; i < len - 1; i++) {
part = parts[i];
target = target[part] == undefined ? (target[part] = {}) : target[part];
}
target[parts[len - 1]] = value;
return target;
}
var obj = {};
setObjectPathValue(obj, "level1.level2.level3.name", "test");
alert(obj.level1.level2.level3.name);
谢谢你的工作:-) – 2012-07-11 15:47:50
为什么downvote?好的,是一个简单的问题。但是这里的任何人都是过去的新手。或不? – devundef 2012-07-11 15:33:57
我尝试了大多数常用的设置数据的方式,我从php知道,我通常不使用javascript,我通常使用后端编程创建ORM系统... – 2012-07-11 15:49:50