JS 这里怎么理解啊 ?

来源:7-4 返回星期方法

慕粉昵称已占用

2017-02-07 15:49

返回星期方法

getDay() 返回星期,返回的是0-6的数字,0 表示星期天。如果要返回相对应“星期”,通过数组完成,代码如下:

<script type="text/javascript">  

 var mydate=new Date();//定义日期对象   

var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]; //定义数组对象,给每个数组项赋值   


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

  document.write(mydate.getDay());//输出getDay()获取值   

document.write("今天是:"+ weekday[mynum]);//输出星期几 

</script>

注意:以上代码是在2014年3月7日,星期五运行。

结果:

5

今天是:星期五




我想问问 JS中最后一句代码 :document.write("今天是:"+ weekday[mynum]);//输出星期几 

方框中为什么要 这样写: weekday[mynum]   有什么原理吗 ?

写回答 关注

3回答

  • 慕姐8134481
    2017-02-07 15:59:13
    已采纳

    数据结构的数组,weekday 是个数组,他的下标从0开始依次递增,
    var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]; 定义数组,这个定义后 0的索引就是星期日。所以如此使用,不可能是 使用判断来写输出星期几吧。那样也太慢了。

    慕粉昵称已占...

    非常感谢!

    2017-08-07 17:41:10

    共 3 条回复 >

  • 慕妹5016704
    2017-08-07 17:10:42

    getDay() 返回星期,返回的是0-6的数字,可以这么想,一般星期都是星期日算第一天算0,假如今天星期一,那么就是1了,直接输出 document.write(mydate.getDay()),那就是1,

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

    var mynum=mydate.getDay();//获取的是数字,索引值,假如今天星期一,那么就是1了

     weekday[mynum]);//weekday【1】

    刚好对应var weekday的星期一,所以最终输出“星期一”。

    假如定义var weekday=["一","二","三","四","五","六","日"];就会输出“二”。


  • Conqueror1st
    2017-02-08 00:02:42

    weekday是数组,你要输出星期几肯定是从数组中输出呀,mynum其实就是一个变量,储存当前星期几的值,例如星期日是0,星期一是1,用了getDay()获取后今天是星期二的话,mynum的值就是2,然后查找weekday[2]的值,就是星期二。

JavaScript进阶篇

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

468195 学习 · 21891 问题

查看课程

相似问题