Javascript 在数组数组中查找最大值

Javascript 在数组数组中查找最大值,javascript,arrays,Javascript,Arrays,我试图返回每个数组中最大元素的arr,但收到一条错误消息。谢谢 function largestOfFour(arr) { for (var i = 0; i<arr.length; i++) { return Math.max.apply(Math, arr[i]); } } 函数最大四(arr){ 对于(var i=0;i当前,您将两个参数发送到最大四个,但您应该只发送一个,每个索引处都有一个数组 最大的四个([[1,2,4],[23,22,0]]) 为了得到你想

我试图返回每个数组中最大元素的
arr
,但收到一条错误消息。谢谢

function largestOfFour(arr) {
  for (var i = 0; i<arr.length; i++) {
    return Math.max.apply(Math, arr[i]);
    }
}
函数最大四(arr){

对于(var i=0;i当前,您将两个参数发送到最大四个
,但您应该只发送一个,每个索引处都有一个数组

最大的四个([[1,2,4],[23,22,0]])

为了得到你想要的回报结果

function largestOfFour(arr) {
  var returnArray = []
  for (var i = 0; i<arr.length; i++) {
    returnArray.push(Math.max.apply(Math, arr[i]));
    }

  return returnArray;
}
函数最大四(arr){
var returnArray=[]

对于(var i=0;i使用
map
函数

array.map(function(array) {
  return Math.max.apply(Math, array)
})

您没有将数组数组传递给函数,而是将它传递给两个数组。:)

试试这个:

largestOfFour([[1,2,4],[23,22,0]])
              ^                 ^
此外,根据定义,Largestoff在第一次运行时返回最大值——实际上,返回数组数组中第一个数组的最大值

要这样做,您可以每次保存最大值,然后返回该值的最大值

或者利用join()对嵌套数组的明显展平,执行以下操作:

Math.max.apply(null, a.join().split(','))

谢谢,这解决了一个问题。但是迭代没有进行,返回的
[4,23]
只是进行了一次编辑,所以它返回您要查找的内容。四个最大的
需要一个参数,而您传递了两个。谢谢,这帮了大忙。但是它怎么知道迭代两个数组呢?