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

万一里面的人名不等于两个字呢?万一里面的成绩不等于两位数呢?怎么弄啊?

万一里面的人名不等于两个字呢?万一里面的成绩不等于两位数呢?怎么弄啊?

正在回答

4 回答

  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";
  scoreStr = scoreStr.split(';').map(function(x){
      return parseInt(x.split(':')[1]);
  });
  //从数组中将成绩撮出来,然后求和取整,并输出。
  var sum = scoreStr.reduce(function(sum,cur){
      return sum+cur;
  },0);
  document.write('班级总分为:' + Math.ceil(sum/scoreStr.length));

总会有(更懒的)解决方法..

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

媳妇儿写的
var arr1 = scoreStr.split(';');
var score = new Array;
for(i=0;i<=arr1.length-1;i++){
score[i]=arr1[i].split(":")[1]
document.write(score[i]+'<br/>')
}


自己写的
var arr1 = scoreStr.split(';');
var score = new Array;
for(i=0;i<=arr1.length-1;i++){
score[i]=arr1[i].substr(arr1[i].indexOf(':')+1)
document.write(score[i]+'<br/>')
}

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

黑色旋风

这答案有毒,猝不及防被喂了一波狗粮
2016-06-23 回复 有任何疑惑可以回复我~

再改呗

0 回复 有任何疑惑可以回复我~
 var scoreArr = scoreStr.split(';');
 var sum = 0;
 for (var i = 0; i < scoreArr.length; i++) {
    sum += parseInt(scoreArr[i].split(':')[1]);
 }
 document.write("班级总分" + sum);
1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

万一里面的人名不等于两个字呢?万一里面的成绩不等于两位数呢?怎么弄啊?

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