javascript / typescript获取多维数组中复杂对象的索引

时间:2018-06-07 12:26:45

标签: javascript typescript

我希望在多维数组中获得复杂对象的完整索引。 例如。我有以下数组。

var arr = [
    {
        name: "zero", children: null
    },
    {
    name: "one", children: [
        {
            name: "one_zero", children: [{ name: "one_zero_zero", children: null }]
        }
    ]
    }
];

我想获得名为“one_zero_zero”的对象。它应该是索引1_0_0。

我希望你们能帮我解决这个问题。

致以最诚挚的问候,

1 个答案:

答案 0 :(得分:0)

 var newarr =[];
 var index = "";
 function findmeinarr(s,arr){
 for(let i in arr){
 var name = "";
 var flag = false;
 name=arr[i].name
 if(name==s){
   index+=i;flag=true;
 }
if(arr[i].children!=null){
  newarr = arr[i].children;
  index+=i+"-";
    }

 }
 if(flag)console.log(index);
  else findmeinarr(s,newarr);
 }

以下是此工作片段:

  

https://codepen.io/sidhanshu28/pen/xzEyqZ

我在这里使用递归调用。如果我能提供更多帮助,请告诉我。如果适合您,请将其标记为解决方案。