在 JavaScript 中将日期 2013-11-05 转换为 2013 年 11 月 5 日星期二

Convert a date 2013-11-05 to Tuesday, 5th November, 2013 in JavaScript?

本文关键字:星期二 2013 JavaScript 日期 转换 2013-11-05      更新时间:2023-09-26

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

它输出"Nov"而不是"11月",并将时间"00:00:00"添加到转换末尾。

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

任何帮助将非常感谢。

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

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

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

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

你能试试这个吗,下面的函数给出输出是星期二, 5th 十一月, 2013

                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;
               }

你可以做这样的事情

'

$(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>`

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

<script type="javascript">
   var dateTime = new Date(); 
   alert(dateTime.toString());
</script>