JS获取星期几

JavaScript获取星期几是很简单的,关键是怎样以最简单的方式来获取,做到最优化

记得一开始学JavaScript时,老师会这样跟我说:

 1 var date = new Date(),
 2     d = date.getDay(),
 3     str = ‘今天是星期‘;
 4 
 5 if(d == 0){
 6     str += ‘日‘;
 7 }
 8 else if(d == 1){
 9     str += ‘一‘;
10 }
11 else if(d == 2){
12     str += ‘二‘;
13 }
14 else if(d == 3){
15     str += ‘三‘;
16 }
17 else if(d == 4){
18     str += ‘四‘;
19 }
20 else if(d == 5){
21     str += ‘五‘;
22 }
23 else if(d == 6){
24     str += ‘六‘;
25 }
26 
27 alert(str);

 

而过了一段时间老师又来了个更好的方法:

 1 var date = new Date(),
 2     d = date.getDay(),
 3     str = ‘今天是星期‘;
 4 switch(d) {
 5     case 0:
 6         str += ‘日‘;
 7         break;
 8     case 1:
 9         str += ‘一‘;
10         break;
11     case 2:
12         str += ‘二‘;
13         break;
14     case 3:
15         str += ‘三‘;
16         break;
17     case 4:
18         str += ‘四‘;
19         break;
20     case 5:
21         str += ‘五‘;
22         break;
23     case 6:
24         str += ‘六‘;
25         break;
26 }
27 
28 alert(str);


可能之后有一段时间自己抓抓脑袋想着,这么多if、case、break、还有str......等等重复出现的"单词",就不能简单点吗?学了数组及其方法之后,咦?下面这样也可以啊:

1 var date = new Date(),
2     d = date.getDay(),
3     str = ‘今天是星期‘,
4     arr = [‘日‘,‘一‘,‘二‘,‘三‘,‘四‘,‘五‘,‘六‘];
5     str += arr[d];
6 
7 alert(str);

 

或者更简单点的:

 1 var str = ‘今天是星期‘ + [‘日‘,‘一‘,‘二‘,‘三‘,‘四‘,‘五‘,‘六‘][new Date().getDay()];

 

其实字符串也可以的:

 1 var str = ‘今天是星期‘ + ‘日一二三四五六‘.charAt(new Date().getDay());

或者:

 1 var str = ‘今天是星期‘ + ‘日一二三四五六‘[new Date().getDay()];

 

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。