var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var myarr=new Array();
myarr=scoreStr.split(";");
var sum=0;
for(i=0;i<10;i++){
sum=sum+parseInt(myarr[i].substring(3,5));//将字符串类型转成整型
}
var average=Math.round(sum/10);
document.write("班级平均分为:"+average);
我用的是分割字符串的方法(split()),具体如下:
//成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var myarr = new Array();
myarr = scoreStr.split(";");
var myarr2 = new Array();
for(var i=0;i<myarr.length;i++){
myarr2[i] = myarr[i].split(":");
}
//从数组中将成绩撮出来,然后求和取整,并输出。
var myarr3 = new Array();
var y=0;
var sum = 0;
for(var i=0;i<myarr2.length;i++){
for(var j=0;j<myarr2[i].length;j++){
if(j%2 != 0){
myarr3[y]=myarr2[i][j];
y++;
}
}
}
for(var i=0;i<myarr3.length;i++){
sum += parseInt(myarr3[i]);
}
substring(3,5)原因是含头不含尾
substring(3,5)表示提取从0开始的3和4,不包括5,小红:97用substring(3,5)提取了97
我也借楼问个问题 为什么是substring(3,5)而不是substring(3,4)呢 这5是代表什么
"abcdefg".substring(3,5) 的结果是de,上面的代码中就是用它来取出数字的。