【发布时间】:2018-06-22 04:53:59
【问题描述】:
我正在尝试将循环从 for 循环转换为遍历数组的 forEach 循环。循环的目的是找到数组中最大的数并返回最大的数。
当我尝试将其作为 for 循环执行但我似乎无法将其作为 forEach 循环执行时,它可以工作。有可能吗,如果可以,那怎么办?不然怎么办不了?
这是 for 循环,按我的意愿工作
function getBig(x){
var largeNumber = 0;
var argue = x;
for(i = 0; i < argue.length; i++){
if(argue[i] > largeNumber){
var largeNumber = argue[i];
}
}
console.log(largeNumber);
};
这是forEach
function getBig(x){
var largeNumber = 0;
var argue = x;
argue.forEach(function(theNumber){
if(theNumber > largeNumber){
var largeNumber = theNumber;
}
})
console.log(largeNumber);
};
我似乎遇到的麻烦是更改 forEach 中变量的值。怎么改?
【问题讨论】:
-
这与
var largeNumber = argue[i];的范围有关 - 不要在 forEach 中使用var作为该变量名,它会使用外部范围的变量名 -
嗨 Jaromanda,谢谢你的提示! :)
标签: javascript arrays loops foreach