javascript - for循环打印九九乘法表的问题
PHPz
PHPz 2017-04-11 12:41:24
0
3
632
我想打印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 
PHPz
PHPz

学习是最好的投资!

全員に返信(3)
Ty80

因为你使用的是字符串的拼接,而且在每次循环的时候都打印一次。也就是你展示了字符串拼接的过程。。。但是你要的是最后一次的结果,所以:

var str = '';
      for (var i = 1;i<=9;i++ ) {
          str += i +"*" + 9 + '=' + (i*9) +" " ;
          
      }
      console.log(str);

这样就好了~

いいねを押す +0
PHPzhong
var str = '';
for (var i = 1; i <= 9; i++) {
    str += i + "*" + 9 + '=' + (i * 9) + " ";
}
console.log(str);

你之前的代码,每循环一次就打印一次啊。

いいねを押す +0
阿神

把for循环里面的str+=改为str=看看结果

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート