【今日问题】输入[1,2,3],输出层级{name:1,child:child:{name:3}
使用reduce实现
1 2 3 4 5 6 7 8 9 10 11 12
| <script> var arr = [1,2,3]; var obj = arr.slice().reverse().reduce((opt,item)=>{ if(opt){ return {name:item,child:opt} }else{ return { name:item} } },null); console.log(obj);
</script>
|
使用递归
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| function formatter(arr){ if(arr.length){ let current = arr.shift(); if(arr.length ===0){ return { name:current } } return { name:current, child:formatter(arr) } } return {}; } console.log(formatter(arr.concat()));
|
感谢余大佬提点
- 本文标题:【今日问题】输入[1,2,3],输出层级{name:1,child:child:{name:3}
- 本文作者:邵预鸿
- 创建时间:2021-02-21 12:39:00
-
本文链接:/images/logo.jpg2021/02/21/【今日问题】输入-1-2-3-,输出层级-name-1-child-child-name-3/
-
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!