我想打印99乘法表中的第九行,但为何出来的,有这么多?当 i = 2 的时候,不应该是直接进入2*9=18吗?怎么会打印出来还有1*9=9呢?
var str = '';
for (var i = 1;i<=9;i++ ) {
str += i +"*" + 9 + '=' + (i*9) +" " ;
console.log(str);
}
console里输出是
1*9=9
1*9=9 2*9=18
1*9=9 2*9=18 3*9=27
1*9=9 2*9=18 3*9=27 4*9=36
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
因为你使用的是字符串的拼接,而且在每次循环的时候都打印一次。也就是你展示了字符串拼接的过程。。。但是你要的是最后一次的结果,所以:
这样就好了~
你之前的代码,每循环一次就打印一次啊。
把for循环里面的str+=改为str=看看结果