var integer = 10;
var plus = [];
for(var i = 2; i < integer; i++) {
if(integer % i === 0){
plus.push[i];
}
}
console.log(plus)
这会打印出空数组,但为什么呢? shoudnt它打印[2,5]?我无法找到我的代码中的错误
答案 0 :(得分:2)
这有效:
var integer = 10;
var plus = [];
for (var i = 2; i < integer; i++) {
if (integer % i === 0) {
plus.push(i);
}
}
console.log(plus)
&#13;
所以,基本上你做错了就是使用.push[i]
。它是一个常见的语法错误。你只需要使用.push(i)
答案 1 :(得分:1)
plus.push(i);
而非使用plus.push[i];
答案 2 :(得分:0)
函数是JavaScript中的对象。 plus.push[i];
在函数对象push
上查找属性,使用i
的值作为名称(就像索引到数组中一样);然后扔掉它得到的任何值(大概是undefined
,因为该函数可能没有名为"2"
,"4"
等的属性。这就是为什么你没有像许多其他语言那样得到语法错误。
要致电 push
,请使用()
,而不是[]
:
plus.push(i);