如何使用jquery将yyyy-mm-dd格式的日期转换为“长日期”格式

How to convert yyyy-mm-dd formatted date to 'long date' format using jquery?

本文关键字:格式 日期 长日期 转换 何使用 jquery yyyy-mm-dd      更新时间:2023-09-26

我有 yyyy-mm-dd 格式的日期。它被发现是 ISO 日期格式。我需要将其转换为长日期格式。

例如:我的日期为"2015-07-15"。转换后的日期格式应为 2015 年 7 月 15 日。

我经历了几种方法。但没有得到预期的结果。请帮助我找到解决方案。

我会使用 Moment.js 库来实现此目的:

console.log(moment("2015-07-15").format("DD MMMM YYYY")); //prints 15 July 2015
<script src="http://cdnjs.cloudflare.com/ajax/libs/moment.js/2.2.1/moment.min.js"></script>

var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December'];
var current_date = new Date("2015-07-15");
month_value = current_date.getMonth();
day_value = current_date.getDate();
year_value = current_date.getFullYear();
document.write("Converted date is : " + 
day_value +" "+ months[month_value] + " " + year_value);

在这里查看讨论和许多其他解决方案:从日期获取月份名称

var months=["jan","feb","march","April","may","jun","july","August","sept","oct","nov","dec"];
var dateValue=new Date();
var date=dateValue.getDate();
var year=dateValue.getFullYear()
console.log("Today is :"+date+ "  "+months[dateValue.getMonth()]+"   "+year);

你可以通过使用开关来做到这一点,

function getFormattedDate(input){
    date = new Date(''+input+'T00:00:00Z');
    var y=date.getFullYear();
        var m=date.getMonth()+1;
        var d=date.getDate();
        var mmm="";
        switch(m)
        {
         case 1:
          mmm="Jan";
            break;
            case 2:
          mmm="Feb";
            break;
            case 3:
          mmm="Mar";
            break;
            case 4:
          mmm="Apr";
            break;
            case 5:
          mmm="May";
            break;
            case 6:
          mmm="June";
            break;
            case 7:
          mmm="July";
            break;
            case 8:
          mmm="Aug";
            break;
            case 9:
          mmm="Sept";
            break;
            case 10:
          mmm="Oct";
            break;
            case 11:
          mmm="Nov";
            break;
            case 12:
          mmm="Dec";
            break;
        }
        alert(d+' '+mmm+' '+y)
}
getFormattedDate("2015-07-15");

工作 JSFiddle 示例