我想在JS中为数组添加一个数字,但前提是数字是三的倍数。这是我的代码:
var numbers = [];
for (i = 1; i <= 200; i++) {
if i % 3 === 0 {
numbers.push(i);
}
}
alert(numbers);
但代码不会打印任何内容。虽然没有if语句,但是当我只添加1到200之间的数字时,它工作正常......
你能找到错误吗?
谢谢!
答案 0 :(得分:7)
快速解决方法是if (i % 3 === 0) {
但是你为什么不写for (i = 3; i <= 200; i += 3)
而去掉模数检查呢?
答案 1 :(得分:4)
if语句需要一些括号。
var numbers = [];
for (i = 1; i <= 200; i++) {
if (i % 3 === 0) {
// ^ ^
numbers.push(i);
}
}
console.log(numbers);
&#13;
答案 2 :(得分:2)
var numbers = [];
for (var i = 1; i <= 200;i++) {
if (i % 3 == 0) { // () execution brackets necessary
numbers.push(i);
}
}
// better way to do
var numbers = [];
var i = 3; // better to declare it here
for (; i <= 200; i += 3) {
// if (i % 3 == 0) { not required as Bathsheba's answer
numbers.push(i);
// }
}