JS递归怎么实现这道题目?
JS递归怎么实现这道题目?
看到一道面试题,想用递归实现
相关代码
let a = {
value: 1,
children: [{
value: 2,
children: [{
value: 3,
children: [{
value: 4,
children: [{
value: 5
}]
}]
}]
}]
};
let b = func(a);
// 要求b的结构如下
[{ value: 1 },
{ value: 2 },
{ value: 3 },
{ value: 4 },
{ value: 5 }]
请问func如何实现?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
如果对结果不是严格要求一致的话,这样就行。
如果结果数据是需要序列化的,那么额外地清理无用的
children
。简单点,代码简单点:
测试:
这道题思路上使用递归没有问题。个人觉得这么简单的题用递归有点杀猪用牛刀了。
while循环实现: