Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/430.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么';这不是我的javascript工作吗?_Javascript_Arrays - Fatal编程技术网

为什么';这不是我的javascript工作吗?

为什么';这不是我的javascript工作吗?,javascript,arrays,Javascript,Arrays,我正在尝试创建一个javascript,它将从1计数到1000,并将3、5的任意倍数放入一个名为multiples的数组中,然后使用console.log()打印该数组。由于某种原因,我的代码无法工作。有人知道为什么吗 var n; var multiples = []; for(n = 1; n <= 1000; n += 1) { console.log("Counting"); } if(n % 3 === 0) { n.push(multiples); }

我正在尝试创建一个javascript,它将从1计数到1000,并将3、5的任意倍数放入一个名为multiples的数组中,然后使用console.log()打印该数组。由于某种原因,我的代码无法工作。有人知道为什么吗

var n; 
var multiples = [];

for(n = 1; n <= 1000; n += 1) {
    console.log("Counting");
}

if(n % 3 === 0) { 
    n.push(multiples);
}
else {
}

if(n % 5 === 0) {
    n.push(multiples);
}
else {
}

if(n >= 1000) {
    console.log(multiples);
}
else {
}
varn;
var倍数=[];
对于(n=1;n=1000){
console.log(倍数);
}
否则{
}

您的代码几乎没有问题。在for块中使用
{}
指定在每次迭代中执行的代码的范围。因此,为了访问
n
的每个值,您需要将条件语句放在
{}
的内部,而不是外部

您的倍数数组有一个轻微的语法错误。为了将值推入数组,可以使用arrayname后跟点运算符,然后使用push函数,参数为push值。就倍数和n而言,这意味着
multiples.push(n)

使用
if()
块时,不需要else

通常最好的做法是在for循环中包含变量声明,并且使用++而不是+=1

总的来说,您的代码需要看起来更像这样

var multiples = [];

console.log("Counting");
for(var n = 1; n <= 1000; n++) {
    if(n % 3 === 0) { 
        multiples.push(n);
    }
    if(n % 5 === 0) {
        multiples.push(n);
   }
}
console.log(multiples);
var倍数=[];
控制台日志(“计数”);

for(var n=1;n现在我重新格式化了你的代码,你还有什么问题吗?谢谢你重新格式化它。现在没有了。特拉维斯J解决了我所有的问题。谢谢你教我。:)