为了账号安全,请及时绑定邮箱和手机立即绑定

js递归返回想要的值

js递归返回想要的值

婷婷同学_ 2019-05-14 11:13:39
leta=[{"k":[{"k":[{"k":[{"name":"名称4"},{"name":"名称5"}],"name":"名称2"}],"name":"名称1"}],"name":"名称0"},{"k":[{"k":[{"k":[{"name":"名称44"}],"name":"名称22"}],"name":"名称11"}],"name":"名称00"}]//希望的结果['名称0-名称1-名称2-名称3-名称4','名称0-名称1-名称2-名称3-名称5','名称00-名称11-名称22-名称33-名称44']
查看完整描述

2 回答

?
隔江千里

TA贡献1906条经验 获得超10个赞

老哥你a里面没有3,怎么期望输出3。
constflat=l1Arr=>[].concat(...l1Arr)
constiter=arr=>
flat(arr.map(
i=>i.k
?iter(i.k).map(j=>i.name+'-'+j)
:i.name
))
constoutput=iter(a)
console.log(output)
//['名称0-名称1-名称2-名称4','名称0-名称1-名称2-名称5','名称00-名称11-名称22-名称44']
                            
查看完整回答
反对 回复 2019-05-14
?
元芳怎么了

TA贡献1798条经验 获得超7个赞

兄弟你可以先将JSON数据转化为对象vara=JSON.parse(a);,函数体内部利用for(varkinobj)去做,但是要加个判断条件你因为你是你序输出的所以你的颠倒一下,这里可以利用reverse来颠倒,里面的用递归!
                            
查看完整回答
反对 回复 2019-05-14
  • 2 回答
  • 0 关注
  • 696 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号