2

IAMが多次元配列をソートし、ダブルループの配列内の各サブアレイの最高の数字を入れしようとしているが、何らかの理由で無限ループのエラーを取得IAM:javascriptの無限ループのエラー多次元配列のソート

配列をソートする:

largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]); 

コード:

function largestOfFour(arr) { 
    var temp; 
    for (var i = 0; i < arr.length; i++) { 
     var largestNumber = 0; 
     for (var j = 0; i < arr[i].length; j++) { 
      if (largestNumber < arr[i][j]) { 
       largestNumber = arr[i][j]; 
      } 
     } 
     temp[i] = largestNumber; 
    } 
    return temp; 
} 
+4

'私はARR <[i]は.length'? –

+1

'i cske

答えて

1

次の2つの変更、結果を代入する変数の適切なタイプのための1、およびtでのチェックが必要彼は正しい変数でループします。

function largestOfFour(arr) { 
 
    var temp = []; // necessary 
 
    for (var i = 0; i < arr.length; i++) { 
 
     var largestNumber = 0; 
 
     for (var j = 0; j < arr[i].length; j++) { 
 
      //   ^^ j instead of i 
 
      if (largestNumber < arr[i][j]) { 
 
       largestNumber = arr[i][j]; 
 
      } 
 
     } 
 
     temp[i] = largestNumber; 
 
    } 
 
    return temp; 
 
} 
 

 
console.log(largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]));