【今日问题】输入[1,2,3],输出层级{name:1,child:child:{name:3}
    
    
    
    
    
      
使用reduce实现
| 12
 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>
 
 | 
使用递归
| 12
 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 许可协议。转载请注明出处!