有人可以帮我创建一个 JavaScript 函数,将下面的字符串转换为对象吗?
var structure = 'user.location.city';
当运行 JavaScript 函数时,将返回一个如下结构的对象:
user: {
location: {
city: {}
}
}
我想出了下面的代码,但是对象被搞乱了:
var path = structure.split('.');
var tmp_obj = {};
for ( var x = 1; x < path.length; x++ ) {
tmp_obj[path[x]] = {};
};
我不知道如何将“城市”对象添加到“位置”对象。
最佳答案
var path = structure.split('.');
var tmp_obj = {};
var obj = tmp_obj;
for(var x = 1; x < path.length; x++) {
tmp_obj[path[x]] = {};
tmp_obj = tmp_obj[path[x]];
};
关于JavaScript 函数从字符串创建结构化对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8203789/