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

关于此题中数组写法问题等

1、此题中将成绩分离后,为什么不可以再分离一次。

比如var score1=score0.split(”;“);

       var score2=score1.split(”:“);

2、此题中将成绩分离后,在计算中定义数组时,直接写成 

比如var score1=score0.split(”;“)

       for{。。。。。;score1[i]。。。}

为什么可以这样写?

正在回答

1 回答

第一次根据分号分离后,score1已经成了数组,第二次再根据冒号分离时,要写成在i循环里,score1[i].split(":"),即针对score1数组里面的每一个元素根据冒号分离。

我一开始也没明白这个,然后就换了一个思路写的代码,你可以参考一下。

<script type="text/javascript">

  var scoreStr = "小明:87;小花:81;小红:97;小天:76;小张:74;小小:94;小西:90;小伍:76;小迪:64;小曼:76";

var j=0;

var grade=new Array();

for(i=0;i<scoreStr.length-4;i++){//防止最后一名同学是100分

  if(scoreStr.charAt(i)==":"){

      var m=scoreStr.indexOf(";",i);

     grade[j]=scoreStr.substring(i+1,m);

     j++;

  }

}

grade[j]=scoreStr.substring(scoreStr.indexOf(":",i)+1);//因为最后一个分数没有分号,所以需要单独添加进数组


  //从数组中将成绩撮出来,然后求和取整,并输出。

  var sum=0;

  for(x in grade){

      sum=sum+parseInt(grade[x]);

  }

  document.write(date.getFullYear()+"年"+date.getMonth()+"月"+date.getDate()+"日 "+week[date.getDay()]+"--班级总分为"+sum+" 班级平均分为"+Math.round(sum/grade.length));

</script>


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

Summer1987 提问者

感谢!另分号分离后,score1就成了数组?
2016-06-23 回复 有任何疑惑可以回复我~
#2

z阿汀 回复 Summer1987 提问者

因为被逗号分开了啊,分成了一个一个的元素,不再是一整个string了
2016-06-24 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468268    人
  • 解答问题       21891    个

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

进入课程

关于此题中数组写法问题等

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