【发布时间】:2019-07-03 19:53:43
【问题描述】:
我有一个嵌套对象,我如何拥有传入对象和键并取回值的函数?
示例输入
object = {"a1":{"b1":"{"c1":"d1"}"}}
key = a1/b1/c1
object = {"x1":{"y1":"{"z1":"a1"}"}}
key = x1/y1/z1
value = a1
以下是我尝试过的,但它是错误的
var obj, traverse;
obj = {
a1: {
b1: c1,
b1: d1
},
x1: {
y1: z1,
y1: a1
}
};
traverse = function(node, path) {
var pairs;
if (!(pairs = _(node).pairs()).length) {
return [
{
keys: path,
value: node
}
];
} else {
return [].concat.apply([], _(pairs).map(function(kv) {
return traverse(kv[1], path.concat(kv[0]));
}));
}
};
console.log(traverse(obj, []));
【问题讨论】:
-
^ 不是在
.处拆分,而是在反斜杠 (`\`) 处拆分
标签: javascript