我正在编写一个编码挑战来获取一个由子数组组成的给定数组,搜索每个子数组中最大的数字,最后返回一个只包含最大数字的新数组.我的思考过程是从每个子数组中创建变量,编写比较数组中每个值的for循环,然后将最大值推送到新数组.在编写了我的第一个for-loop之后,我测试了我的代码并看到我得到了一个意外的结果,即整个第一个子阵列被推入我的新数组中.在编写接下来的三个循环之前,我正在寻找错误.谢谢.编辑:这适用于初学者JavaScript编码器,建议表明在您的解决方案中使用比较运算符.
function largestOfFour(arr) {
var one = arr[0];
var two = arr[1];
var three = arr[2];
var four = arr[3];
var newArr = [];
for (var i = 0; i < one.length; i++){
var oneLrg = 0;
if (one[i] > oneLrg){
oneLrg = one[i];
}
newArr.push(oneLrg);
}
return arr;
}
console.log(largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]])); //This test case returns [4,5,1,3] instead of just [5]
Run Code Online (Sandbox Code Playgroud)