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

后面的程序出不了结果

var scoreStr=new Array();

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

var str1=scoreStr.split(";");

var str2=str1.split(":");

var sum=0;

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

    str2[i+1]=parseInt(str2.substring(i+1,i+2));

    sum=str2[i+1]+sum;

}

document.write(sum);


正在回答

1 回答

你这个,逻辑很混乱啊==

首先循环里i并不能=str2.length,否则就超出数组长度了,更何况i是以每两个为一组往上加的

其次str2是个数组,是不能用substring来提取字符串的,因为这个方法只能在字符串里提取字符串。还有,你的str1已经是一个数组了,因为split是将字符串分割为数组的方法,你再用它来分割一个数组以得到另一个数组是不可能的。。

我直接把我的答案贴一下,有疑惑可以再问我

 var scoreArr=scoreStr.split(";");
 var sum=0;
  for(var i = 0; i < scoreArr.length; i++){
      sum += parseInt(scoreArr[i].substring(3,5));
  }
  document.write(sum);


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

ZL963359 提问者

谢谢你
2018-06-26 回复 有任何疑惑可以回复我~
#2

ZKKL

学习了 多谢
2018-06-28 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

后面的程序出不了结果

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信