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

来源:7-23 编程练习

枢弦

2016-06-23 15:27

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

写回答 关注

4回答

  • 黑色旋风
    2016-06-23 19:04:09
      //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦
      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));

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

  • goodyangbo
    2016-06-23 18:36:30

    媳妇儿写的
    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/>')
    }

    黑色旋风

    这答案有毒,猝不及防被喂了一波狗粮

    2016-06-23 19:00:25

    共 1 条回复 >

  • 枫见3250315
    2016-06-23 16:12:44

    再改呗

  • 束先森
    2016-06-23 15:56:26
     var scoreArr = scoreStr.split(';');
     var sum = 0;
     for (var i = 0; i < scoreArr.length; i++) {
        sum += parseInt(scoreArr[i].split(':')[1]);
     }
     document.write("班级总分" + sum);

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468980 学习 · 22582 问题

查看课程

相似问题