2

我看过datejs,但我无法让它输出正确的格式。

它输出“Nov”而不是“November”,并将时间“00:00:00”添加到转换的末尾。

Date.parse('2013-11-05') 输出 2013 年 11 月 5 日星期二 00:00:00

任何帮助都会非常感谢。

4

4 回答 4

5

Date.parse在 pre-ES5 或ISO8601 简化版本之外的格式中不可靠。此外,Date.toDateString还依赖于实现。

我更喜欢Moment.js,因为它体积小、文档齐全且非常健壮——另外,我不喜欢手动编写日期解析格式化。像这样的东西(小提琴)应该可以完成这项工作:

var m = moment('2013-11-05')
var str = m.format('dddd, Do MMMM, YYYY')

(Moment.js 也支持本地化,如果你喜欢这种东西的话。)

于 2013-11-08T09:17:48.417 回答
0

你可以做这样的事情

`

$(document).ready(function(){
var date=  new Date(); 
 var _strsplit= date.toDateString().split(" ");

 var Dayname=_strsplit[0];

 var MonthName=_strsplit[1];

 var Day=_strsplit[2];

 var Year=_strsplit[3];

 switch(Dayname)
 {

  case "Mon":
        Dayname="Monday";
        break;
         case "Tue":
        Dayname="Tuesday";
        break;

         case "Wed":
        Dayname="Wednesday";
        break;
         case "Thr":
        Dayname="Thrusday";
        break;
   case "Fri":
        Dayname="Friday";
        break;
         case "Sat":
        Dayname="Saturday";
        break;
         case "Sun":
        Dayname="Sunday";
        break;

 }
 switch(MonthName)
 {

 case "Nov":
      MonthName="Novemeber";
      break;

//对月份做同样的事情

 }

 document.write(Dayname +" "+MonthName+" "+Day+" "+Year);



}); 
</script>`
于 2013-11-08T10:10:24.103 回答
0

你能试试这个吗,下面的函数给出 的输出是 2013 年 11 月 5 日,星期二

                var dateStr='2013-11-05';                    

                var str = DateConvert(dateStr);
                window.alert(str);    

                  function DateConvert(dateStr){          

                    var d = new Date(dateStr);
                    var month = ["January", "February", "March", "April", "May", "June",
                                 "July", "August", "September", "October", "November", "December" ][d.getMonth()];

                    var day = d.getDate();
                     var suffix = 'th';
                     switch (day) {
                         case 1:
                         case 21:
                         case 31:
                             suffix =  'st';                                
                         case 2:
                         case 22:
                             suffix = 'nd';                             
                         case 3:
                         case 23:                                
                             suffix = 'rd';
                       }                         


                     var DayName = ["Sunday", "Monday", "Tuesday", "Wednessday", "Thursday", "Friday", "Saturday"][d.getDay()];                      

                     var str = DayName+', '+day+suffix+' '+ month+', '+ d.getFullYear();

                  return str;
               }
于 2013-11-08T09:39:22.947 回答
-1

请尝试给定的代码可能会对您有所帮助。

<script type="javascript">
   var dateTime = new Date(); 
   alert(dateTime.toString());
</script>
于 2013-11-08T09:18:15.013 回答