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

算是写出来了吧 很冗长的一大段

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>系好安全带,准备启航</title>

<script type="text/javascript">

var mydate=new Date();//获取当前时间

var myyear=mydate.getFullYear();//获取当前年份

var mymonth=mydate.getMonth();//获取当前月份

var myday=mydate.getDate();//获取当前日期

var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];//设置星期1-7的数组

var mynum=mydate.getDay(); //返回值储存在变量mynum中

document.write(myyear+"年"+mymonth+"月"+myday+"日"+weekday[mynum]+"<br>"); //输出要求的日期格式


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

//var myarr=scoreStr.substring(3,5)+scoreStr.substring(9,11)+scoreStr.substring(15,17)+scoreStr.substring(21,23)+scoreStr.substring(27,29)+scoreStr.substring(33,35)+scoreStr.substring(39,41)+scoreStr.substring(45,47)+scoreStr.substring(51,53)+scoreStr.substring(57,59);

var myarr=[scoreStr.substring(3,5)  ,

           scoreStr.substring(9,11) ,

           scoreStr.substring(15,17),

           scoreStr.substring(21,23),

           scoreStr.substring(27,29),

           scoreStr.substring(33,35),

           scoreStr.substring(39,41),

           scoreStr.substring(45,47),

           scoreStr.substring(51,53),

           scoreStr.substring(57,59)];

var num1=myarr[0];

var num2=myarr[1];

var num3=myarr[2];

var num4=myarr[3];

var num5=myarr[4];

var num6=myarr[5];

var num7=myarr[6];

var num8=myarr[7];

var num9=myarr[8];

var num10=myarr[9];

var add=parseInt(num1)+parseInt(num2)+parseInt(num3)+parseInt(num4)+parseInt(num5)+parseInt(num6)+parseInt(num7)+parseInt(num8)+parseInt(num9)+parseInt(num10)

document.write("班级总分为:"+add);

</script>

</head>

<body>

</body>

</html>



正在回答

4 回答

你可以优化一下代码这样虽然出来了,就像你说的很不容易!一层一层慢慢找规律!

 //(参考一下,你是直接把成绩提了出来)小明:87;      小花:81;   给出的数据都是这种格式的,你可以先将名字跟成绩先拆分开,然后再去拆成绩!因为这样规律就来的很明显了!

           scoreStr.substring(3,5)             这边你可以改一下      scoreStr.substring(x+6,y+6);

           scoreStr.substring(9,11) ,

          

var arr[i]=  scoreStr.substring(x+6,y+6);

不用先把他都写好放到数组里,如果数据太多 你你可能挨个写一遍这边需要一个for就可以!            


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

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>系好安全带,准备启航</title>


<script type="text/javascript">

  //通过javascript的日期对象来得到当前的日期,并输出。

  var d = new Date();

  var month = ["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

  document.write((d.getFullYear() + "年" + (parseInt(d.getMonth()) + 1)  + "月" + d.getDate() + "日" + month[d.getDay()]) + "<br>");

  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦

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

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

  var scores = scoreStr.split(";");

  var scSum = 0;

  for(var i = 0; i < scores.length; i++){

      var num = scores[i].split(":");

      document.write(num[0] + "的成绩:" + num[1] + "<br>");

      scSum += parseInt(num[1]);

  }

  document.write("成绩总和:" + scSum + "成绩平均:" + scSum / scores.length);

</script>

</head>

<body>

</body>

</html>


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

跟你差不多,很长很长不过也算是写出来了。

<!DOCTYPE  HTML>

<html >

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>系好安全带,准备启航</title>


<script type="text/javascript">


  //通过javascript的日期对象来得到当前的日期,并输出。

var riqi=new Date();

var xingqi=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"];

document.write(riqi.getFullYear()+"年"+parseInt(riqi.getMonth()+1)+"月"+riqi.getDate()+"日"+"&nbsp"+xingqi[riqi.getDay()]);

document.write("--")

  //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦

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


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

  var fenshu=scoreStr.split(";");

  var a=fenshu[0].substring(3);

  var b=fenshu[1].substring(3);

  var c=fenshu[2].substring(3);

  var d=fenshu[3].substring(3);

  var e=fenshu[4].substring(3);

  var f=fenshu[5].substring(3);

  var g=fenshu[6].substring(3);

  var h=fenshu[7].substring(3);

  var i=fenshu[8].substring(3);

  var j=fenshu[9].substring(3);

  var pingjun=(Number(a)+Number(b)+Number(c)+Number(d)+Number(e)+Number(f)+Number(g)+Number(h)+Number(i)+Number(j))/10;

  var chengji=Math.round(pingjun)

  document.write("班级总平均分为:"+chengji);


</script>

</head>

<body>


</body>

</html>


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

<script type="text/javascript">


        //通过javascript的日期对象来得到当前的日期,并输出。


        let mydate = new Date();

        let year = mydate.getFullYear();

        let month = mydate.getMonth();

        let day = mydate.getDay();


        //成绩是一长窜的字符串不好处理,找规律后分割放到数组里更好操作哦

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

        var scoreArr = scoreStr.split(';');

        let score = 0;

        for (i = 0; i < scoreArr.length; i++) {

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

            num = scoreArr[i].split(':');

            score += parseInt(num[1]);

        }

        console.log(score);


    </script>


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

95空巢老人 提问者

parseInt();会直接把字符串中的数字提取出来吗?
2020-04-10 回复 有任何疑惑可以回复我~
#2

明天会更好xm 回复 95空巢老人 提问者

不会,num[1]作用于数字
2020-04-13 回复 有任何疑惑可以回复我~
#3

野生Monk3y 回复 95空巢老人 提问者

不好意思, 最近忙, 没时间上. parseInt 主要是把字符串转成int. 可以使用console.log打印输出一下就知道了.
2020-04-15 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

算是写出来了吧 很冗长的一大段

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