js关于返回星期及日期格式的方法

,    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~

 

posted @ 2016-06-03 11:29  嘣嚓嚓jiji~  阅读(1197)  评论(0编辑  收藏  举报