我有一个深层嵌套的对象
const myObject = {
a: {
b: {
c: [
{
t: {finallyHere: 'no!'}
},
{
d: {finallyHere: 'yes!'}
},
]
}
}
}
我的输出对象看起来像,output = [a, b, c, 1, d] 我将传递的函数是getPath(myObject, 'd')
到目前为止我正在尝试的功能,
function getPath(obj, key) {
paths = []
function getPaths(obj, path) {
if (obj instanceof Object && !(obj instanceof Array)) {
for (var k in obj){
paths.push(path + "." + k)
getPaths(obj[k], path + "." + k)
}
}
}
getPaths(obj, "")
return paths.map(function(p) {
return p.slice(p.lastIndexOf(".") + 1) == key ? p.slice(1) : ''
}).sort(function(a, b) {return b.split(".").length - a.split(".").length;})[0];
}
我未定义,请帮助输出
慕森卡
相关分类