teratsuki
2017-04-18 15:04
小明:87; 小花:81; 小红:97; 小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76
用;隔成一维后就不知道怎么做了
这里可以借鉴定义二维数组的方法:
var myarr=new Array(); //先声明一维 for(var i=0;i<2;i++){ //一维长度为2 myarr[i]=new Array(); //再声明二维 for(var j=0;j<3;j++){ //二维长度为3 myarr[i][j]=i+j; // 赋值,每个数组元素的值为i+j } }
参照上述方法,这里我们可以这么做
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76"; var newscoreStr = scoreStr.split(";"); var length = newscoreStr.length; var sum = 0; for(var i = 0;i<length;i++) { newscoreStr[i] = newscoreStr[i].split(":"); sum = sum + parseInt(newscoreStr[i][1]); }
var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
var arr = scoreStr.split(";"); //转成数组
var zh = 0; //变量 总和
var pj = 0; // 变量 平均
for(i = 0; i < arr.length; i++) { //循环读取分数
var wz = arr[i].indexOf(":"); //取出一个数,定位“:”所在位置
zh = zh + parseInt(arr[i].substr(wz + 1, 2)); //取出“:”后面的分数累加起来 ,parseInt整形
}
pj = Math.floor(zh / arr.length); //计算平均,取整。
document.write(pj);
比如:[['小明',87],['小花',8], ['小红',97]]
比如:[['小明',87],['小花',8], ['小红',97]]
JavaScript进阶篇
468786 学习 · 22562 问题
相似问题