var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76"; var scoreArr=scoreStr.split(":");//分割成一个数组 console.log(scoreArr); //从数组中将成绩撮出来,然后求和取整,并输出。 var sum;var score; for (var i=1;i<scoreArr.length;i++ ) { score=parseInt(scoreArr[i]); sum+=score; } console.log(sum);
sum 没有值~ 改成var sum=0;
你给 num变量赋一个初值 就行了,num=0;你的代码不用改动,
应该从;分割,然后再截取字符中的数字。
for (var i=0;i<scoreArr.length;i++ ) { score=parseInt(scoreArr.split(";")[i].substring(3,5)); sum+=score; }
先要分割分号(;),否则直接分割冒号出来的数组是很奇怪的一个东西