在javascript中用索引数组索引一个数组的数组

Index an array of arrays with an array of indexes in javascript

本文关键字:数组 索引 一个 javascript      更新时间:2023-09-26

给定一个数组的数组[数组的数组…]例如:

array[a][b][c][d][e]

和索引数组:

indexes = [ a, b, c, d, e ];

是否有一种优雅的方法来使用索引数组索引数组?

我使用的蛮力方法是:

element = array[indexes[0]][indexes[1]][indexes[2]][indexes[3]][indexes[4]]

编辑

为了明确,我将能够使用从1到n个元素的任意索引数组,其中n是数组嵌套的深度。

因此,给定上面的五层嵌套数组的数组的例子,并给定索引数组:

indexes2 = [ a, b, c ];

我希望检索:

array[a][b][c]

您可以使用Array.reduce()来遍历indexes并获得您想要的元素。

// array[a][b][c][d][e]
var indexes = [ a, b, c, d, e ];
var element = indexes.reduce(function(prev, curr){
    return prev[curr];
}, array);