标签:
, js中使用Date()日期对象,星期返回值为0-6,不会直接返回星期几,所以要转成文字"星期X",思考了下我是这么写的:
1 var myd=new Date(); 2 var mydate=myd.getDay(); 3 switch(mydate){ 4 case 0: 5 document.write("星期日"); 6 break; 7 case 1: 8 document.write("星期一"); 9 break; 10 case 2: 11 document.write("星期二"); 12 break; 13 case 3: 14 document.write("星期三"); 15 break; 16 case 4: 17 document.write("星期四"); 18 break; 19 case 5: 20 document.write("星期五"); 21 break; 22 case 6: 23 document.write("星期六"); 24 break; 25 }
但是参考了其他写法,我发现星期返回值0-6简直和数组是绝配:
1 <script type="text/javascript"> 2 var mydate=new Date(); 3 var weekday=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]; 4 document.write("今天是:" + weekday[mydate.getDay()]); 5 </script>
这样写真的简便很多,看来我还有很长的代码路要走。。。
然后还有关于日期输出格式的问题。大家应该都知道,直接调用Date(),不同浏览器输出的格式不同,但是都是英文版的日期。那我想要的是中文版的,比如:
XXXX年XX月X日 星期X
怎么办?我们知道Date()还有很多get/set的方法,比如getFullYear()四位数字表示的年份,getMonth()月份,getDay()星期。我是这么写的:
var myd=new Date(); var weekend=["星期日","星期一","星期二","星期三","星期四","星期五","星期六"]; document.write(myd.getFullYear()+"年"+myd.getMonth()+"月"+myd.getDate()+"日"+weekend[myd.getDay()]);
百度了一下其他人的方法,有一个是这样的:
var myd=new Date(); document.write(myd+"<br/>"); var a=myd.toLocaleString(); document.write(a);
在FireFox上运行结果是:
Fri Jun 03 2016 12:07:07 GMT+0800 2016/6/3 下午12:07:07
toLocaleString()这个方法转化成本地字符串,就有了转换成中文日期这样的效果。然后大家发现了木有!星期几不见了!。。。真是闪瞎狗眼。。。那好吧,还是用我自己的方法吧o(^▽^)o~
标签:
原文地址:http://www.cnblogs.com/xujijisareadomain/p/5555697.html