爱的梦想2015
2015-08-31 01:32
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var arr = scoreStr.split(';');//按 ; 符号进行数组分割
var sum = 0;
var av= 0;
for( var i =0;i<arr.length;i++ ){
var index = arr[i].indexOf(':'); //根据 : 符号确定数字开始的位置
sum += parseInt( arr[i].substr(index+1,2) ); // parseInt() 字符串类型转成整型
}
av = sum/arr.length;
av = Math.floor(av); // 取整
//从数组中将成绩撮出来,然后求和取整,并输出。
document.write("--班级总分为:"+av);
var index = arr[i].indexOf(':');
这个indexOf() 不是显示括号内字符最初出现的位置吗?,怎么提取后面的数字?
不该是每个 indexOf(":")都等于2吗?
先去runoob上了解下js吧。
先用split方法将字符串进行分割成为一个数组,小明:87就是数组中的一项,然后循环数组,对每一项 小明:87 进行截取字符串来得到分数,var index = arr[i].indexOf(':'); //得到:出现在字符串的位置,arr[i].substr(index+1,2)截取字符串得到分数。对这些函数不清楚的可以上网查询一下。
JavaScript进阶篇
468190 学习 · 21891 问题
相似问题