为了账号安全,请及时绑定邮箱和手机立即绑定

JavaScript_字符串中提取数字并求和

<script type="text/javascript">
  var source = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
  var source2 = source.split(";");
  for (var i = 0; i < source2.length; i++) {
      var score=new Array();
      score[i]=parseInt(source2[i].substr(source2[i].indexOf(":")+1));//source2[i].indexOf(":")表示从:出现的位置,而+1则是把:下一个开始提取
      document.write(score[i]+",");
      var sum;
      sum +=score[i];
   }
   document.write(sum);
   </script>

为啥每运行一次,sum的值就会加上815(815才是本来要求的sum值)

正在回答

3 回答

var sum;应该放到循环外面且要赋值为0.

0 回复 有任何疑惑可以回复我~
#1

明图 提问者

很对,谢谢~
2017-02-15 回复 有任何疑惑可以回复我~

对sum的赋值应该放在循环的外面,且要赋初始值0

0 回复 有任何疑惑可以回复我~

<script type="text/javascript">

      var source = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

      var source2 = source.split(";");

                var=sum; sum=0;

                      for (var i = 0; i < source2.length; i++) {

                      var score=new Array();

                      score[i]=parseInt(source2[i].substr(source2[i].indexOf(":")+1));

                 //source2[i].indexOf(":")表示从:出现的位置,而+1则是把:下一个开始提取

                      document.write(score[i]+",");

                       sum +=score[i]; }

                       document.write(sum);

   </script>

   


0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

JavaScript_字符串中提取数字并求和

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号