2017-03-21 16 views
0

によって、ネストされた要素へのアクセスIは、2つの配列 インデックス配列

  • dataArrを有します。配列は
  • indexArr(ネストされたJSONを考えて)さまざまなレベルでの特性をも含まれていてもよい - 私は、取得の追加・更新に行くかどうdataArr

で特定のアイテムにアクセスするためのキーを含む長さnの配列新しい配列を作成せずにdataArr[indexArr[0]][indexArr[1]][indexArr[2]]...[indexArr[n]]の値はありますか?

対象言語:javascriptおよびpythonです。

答えて

0

インデックス配列と元の配列に渡す再帰関数を作成します。

function getItem(data, indexes) { 
    if (indexes.length) { 
     var index = indexes.shift(); 

     // if index exist - dive deeper, else return indicator that failed. 
     if (typeof data[index] !== 'undefined') { 
      return getItem(data[index], indexes); 
     } else { 
      return null; 
     } 
    } 

    // will be returned when no more indexes passed - last element reached 
    return data; 
} 

getItems(dataArr, [1, 5, 9, 'a', 'sum', 99]); 
関連する問題