我是一个学习JS的初学者。谁能给我解释一下为什么输出的是 "1"?
这里是
for (var i = 1; i <= 15; i++) {
if (i % 2 == 0) {
i += 2;
} else if (i % 3 == 0) {
i++;
}
console.log(i);
}
输出: 1,4,5,8,10,11,14,16。
我可以理解为什么输出等于4、5、8、10、11、14、16,但是我不理解为什么输出的是1...
当 i
是 1
,你定义的两个条件语句都不会被执行。
for (var i = 1; i <= 15; i++) {
if (i % 2 == 0) {
console.log( 'inside if' );
i += 2;
} else if (i % 3 == 0) {
console.log( 'inside else-if' );
i++;
} else {
console.log( 'neither if nor else-if' );
}
console.log(i);
}
剩下的总是 1
当你把它与 2
或 3
,这不等于 0
.
console.log( 1 % 2 );
console.log( 1 % 3 );
当你看你的代码时,控制台已经脱离了if-else条件,这意味着它从条件中打印i,并脱离了条件,你的for循环从1开始,当i=1时,条件跳过,控制台执行并打印i,这等于1,我想这就是为什么,而I % 3 == 0意味着I % 3 == false,这是因为
var i = 2;
if (i % 2 == 0)
{
console.log(0)
}
if (i % 2 == false)
{
console.log(0)
}
答案都是0