Javascript 在三维数组中查找最大值及其索引

Javascript 在三维数组中查找最大值及其索引,javascript,mapreduce,Javascript,Mapreduce,我想在n维数组中查找最大值及其外部索引,例如: myArray = [[0,1,2],[3,4,5],[6,7,8]] 到目前为止,我想出了这样的主意: const highest = myArray.reduce((r, a) => a.map((b, i) => (r[i] > b)), []); 本例中的期望输出为: [8, 2] 您可以使用reduce,在reduce累加器中使用第一个元素的值作为默认值,如果当前值大于累加器,则更新当前值,从内部循环更新当前值,从

我想在n维数组中查找最大值及其外部索引,例如:

myArray = [[0,1,2],[3,4,5],[6,7,8]]
到目前为止,我想出了这样的主意:

const highest = myArray.reduce((r, a) => a.map((b, i) => (r[i] > b)), []);
本例中的期望输出为:

[8, 2]

您可以使用reduce,在reduce累加器中使用第一个元素的值作为默认值,如果当前值大于累加器,则更新当前值,从内部循环更新当前值,从外部循环更新索引

让myArray=[[0,1,2],[3,4,5],[6,7,8]]
让findIndex=(arr)=>{
设max=arr.reduce((op,inp,i)=>{
输入forEach(v=>{
如果(v>op[0]){
op=[v,i]
}
})
返回操作
},[arr[0][0],0])
返回最大值
}

log(findIndex(myArray))
您可以使用reduce,在reduce累加器中使用第一个元素的值作为默认值,如果当前值大于累加器,则更新。从内部循环更新当前值,从外部循环更新索引

让myArray=[[0,1,2],[3,4,5],[6,7,8]]
让findIndex=(arr)=>{
设max=arr.reduce((op,inp,i)=>{
输入forEach(v=>{
如果(v>op[0]){
op=[v,i]
}
})
返回操作
},[arr[0][0],0])
返回最大值
}

log(findIndex(myArray))
您可以使用
reduce
方法获取每个数组的
max
值,并检查该值是否大于累加器中的第一个元素

constmyarray=[[0,1,2],[3,4,5],[6,7,8]]
const highest=myArray.reduce((r,e,i)=>{
常数max=数学最大值(…e);
返回(!r.length | | max>r[0])?[max,e.indexOf(max,i]:r
}, [])
console.log(最高)
/*
8-最大数值
2-子数组中最大值的索引
2-最大值为的子数组的索引

*/
您可以使用
reduce
方法,获取每个数组的
max
值,并检查该值是否大于累加器中的第一个元素

constmyarray=[[0,1,2],[3,4,5],[6,7,8]]
const highest=myArray.reduce((r,e,i)=>{
常数max=数学最大值(…e);
返回(!r.length | | max>r[0])?[max,e.indexOf(max,i]:r
}, [])
console.log(最高)
/*
8-最大数值
2-子数组中最大值的索引
2-最大值为的子数组的索引

*/
您能分享您想要的输出吗<代码>[2,2]?
[8,8]
在这里没有任何意义,因为该组的最高总值和索引。同意并更正@CodeManiacAre所有保证唯一的值?理解。值得一提的是,如果OP尝试了哈哈,我不认为会选择更糟糕的例子,尽管我确信这完全是巧合:)
8既是最大值,也是平坦的索引
2
既是外部数组中包含最大值的组的索引,也是包含数组中包含最大值的组的索引。您可以共享所需的输出吗<代码>[2,2]
[8,8]
在这里没有任何意义,因为该组的最高总值和索引。同意并更正@CodeManiacAre所有保证唯一的值?理解。值得一提的是,如果OP尝试了哈哈,我不认为会选择更糟糕的例子,尽管我确信这完全是巧合:)
8既是最大值,也是平坦的索引
2
既是外部数组中包含最大值的组的索引,也是包含数组中包含最大值的组的索引。