的对象我想这样和它的作品为对象,具有一个属性:拼合对象
var foo = { foo: { foo: { foo: function(){ return x }}}};
function flattenObj(obj) {
var res;
for (var k in obj) {
res = obj[k];
while (k in res) {
res = res[k];
}
}
return res;
}
console.log(flattenObj(foo)); // function(){ return x }
我怎样才能使它与此对象的工作?
{ baz: 'baz', foo: { baz: 'baz', foo: function(){ return x }}};
所以它返回:
{ baz: 'baz', foo: function(){ return x }}
编辑:
var obj = {
a: 1,
b: 2,
obj: {
a: 1,
b: 2,
obj: {
a: 1,
b: 2,
obj: function(){ return x }
}
}
}
如果什么'{富:{吧: '巴兹'}}'? '{bar:'baz'}'? – leaf
只有一个对象是递归的,请检查我的编辑。 – lokhura
感谢您的回答家伙。我接受了一个。 – lokhura