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

JS 这里怎么理解啊 ?

返回星期方法

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 回答

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

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

慕粉昵称已占用 提问者

还是不懂啊
2017-02-07 回复 有任何疑惑可以回复我~
#2

慕姐8134481 回复 慕粉昵称已占用 提问者

weekday[索引值],例如 0,1,2,3 等。这个是从数组里出去 第几个索引所对应的值。
2017-02-07 回复 有任何疑惑可以回复我~
#3

慕粉昵称已占用 提问者

非常感谢!
2017-08-07 回复 有任何疑惑可以回复我~

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=["一","二","三","四","五","六","日"];就会输出“二”。


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

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

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

举报

0/150
提交
取消

JS 这里怎么理解啊 ?

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