var obj={
a:1,
b:{
b1:2,
b2:3
}, c:{ c1:4, c2:{ c21:5, c21:6
}
}
}; //写一个函数返回下列结果
//return json={a:1,b.b1:2,b.b2:3,c.c1:4,c.c2.c21:5,c.c2.c22:6};哪位大神知道这种数据结构怎么整,应该是用到递归,不过那个key值是怎么组出来的,帮帮忙,我现在想写一个方法碰到这种数据结构可以做扁平化处理
2 回答
![?](http://img1.sycdn.imooc.com/545865890001495702200220-100-100.jpg)
慕桂英3389331
TA贡献2036条经验 获得超8个赞
看看这个
(刚刚写错了........)
function outerFn (param){ var result = {} function fn (obj,prefix) { for (key in obj){ let fullKey = prefix?(prefix+'.'+key):key; if (typeof obj[key]==='object'){ fn(obj[key],fullKey) }else{ result[fullKey] = obj[key] } } } fn(param) return result; }
![?](http://img1.sycdn.imooc.com/533e4c5600017c5b02010200-100-100.jpg)
ABOUTYOU
TA贡献1812条经验 获得超5个赞
function fn(data) { const res = {}; function _h(obj, p = '') { if (typeof obj === 'object' || obj === null) Object.keys(obj).forEach(key => _h(obj[key], p ? p + '.' + key : key)); else res[p] = obj; } _h(data); return res; }
添加回答
举报
0/150
提交
取消