Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在typescript中的多维数组中查找索引_Javascript_Typescript - Fatal编程技术网

Javascript 在typescript中的多维数组中查找索引

Javascript 在typescript中的多维数组中查找索引,javascript,typescript,Javascript,Typescript,我有一个类似以下的数组: const myArray: number[][] = [[1,2,3],[4,5,6]] 我想得到一个特定元素的索引。对于一个简单的1D数组,我可以使用[1,2,3].indexOf(1),它返回0。但它不适用于我的情况。您不能像这样在2D数组中直接使用indexOf,因为它使用严格的等式,并尝试将目标值与外部数组的元素匹配,外部数组是数组,因此您总是得到-1 您可以使用findIndex并包含如下内容 constmyarray=[[1,2,3],[4,5,6]]

我有一个类似以下的数组:

const myArray: number[][] = [[1,2,3],[4,5,6]]

我想得到一个特定元素的索引。对于一个简单的1D数组,我可以使用
[1,2,3].indexOf(1)
,它返回
0
。但它不适用于我的情况。

您不能像这样在2D数组中直接使用indexOf,因为它使用严格的等式,并尝试将目标值与外部数组的元素匹配,外部数组是数组,因此您总是得到-1

您可以使用findIndex并包含如下内容

constmyarray=[[1,2,3],[4,5,6]]
让indexFinder=(arr,target)=>{
返回arr.findIndex(v=>v.includes(目标))
}
console.log(indexFinder(myArray,1))

log(indexFinder(myArray,6))
您可以收集所需值的所有数组索引

const
findIndex=(数组,值)=>{
如果(!Array.isArray(Array))返回;
设i=array.indexOf(value),
临时雇员
如果(i!=-1)返回[i];
i=array.findIndex(v=>temp=findIndex(v,value));
如果(i!=-1)返回[i,…temp];
},
数据=[[1,2,3],[4,5,6];
日志(findIndex(数据,1));

日志(findIndex(数据,5))您想要什么索引:全局索引、展平索引或子阵列中的索引?例如,在您的示例中,6的预期索引是什么?