【发布时间】:2019-11-26 17:32:33
【问题描述】:
这里是新人,现在一直在尝试解决这个问题。似乎找不到答案。
问题:试图将 5 以上的所有数字分成一个单独的数组“bigNumbers”。所有其他数字到“smallNumbers”
这是我目前所拥有的:
let allNumbers = [1, 2, 3, 4, 5, 6, 7, 8, 9];
let bigNumbers = [];
let smallNumbers = [];
allNumbers.forEach(function (a) {
if(allNumbers >= 5) {
return allNumbers.push(bigNumbers);
} else {
return allNumbers.push(smallNumbers);
}
});
在此处使用 .push() 方法可能完全采用了错误的方法。感谢您提供任何反馈。
【问题讨论】:
-
阅读代码.... 仔细查看 首先
allNumbers >= 5您正在比较一个大于五的数组。然后你有allNumbers.push(bigNumbers);你正在将bigNumbers数组推入allNumbers数组。您没有将值推送到数组中。了解基本调试console.log(allNumbers,5, allNumbers>=5),它将向您展示 if 发生的情况。 -
改用
bigNumbers .push(a);和smallNumbers.push(a)。并改为检查if (a >= 5) -
在您的
.forEach()回调中,您应该指的是a,而不是allNumbers -
删除
return并更改 if 以检查a -
对
return毫无意义,因为.forEach()忽略了返回值。
标签: javascript arrays loops foreach