如何使用 javascript 将 yyyy-mm-dd 转换为 dd-Mon-yyyy(带有月份名称)

H V*_*rma 0 javascript date function node.js

我的日期格式为 2016-01-09。现在我想将此日期格式转换为 09-Jan-2016 我能够转换为 09-01-2016。但是我怎样才能在那里添加月份名称.有人可以帮忙..这是我正在尝试的代码

function formatDate(input){
            var datePart = input.match(/\d+/g),
            year = datePart[0].substring(0,4), // get only two digits
            month = datePart[1], day = datePart[2];

            return day+'-'+month+'-'+year;
}
formatDate ('2010-01-18'); // "18-01-2010"
Run Code Online (Sandbox Code Playgroud)

Cha*_*ara 5

您可以通过多种方式执行此操作,如下所示:

var monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun",
 "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];

function dateFormat(d){
  var t = new Date(d);
  return t.getDate()+'-'+monthNames[t.getMonth()]+'-'+t.getFullYear();
}
Run Code Online (Sandbox Code Playgroud)

或者

您可以通过这种方式获得月份:

var objDate = new Date(date).toLocaleString("en-us", { month: "long" });//January
var objDate = new Date(date).toLocaleString("en-us", { month: "short" }); //Jan
Run Code Online (Sandbox Code Playgroud)

或者

你可以使用moment.js

var shortMonthName = moment(date).format('MMM') // Jan
var fullMonthName = moment(date).format('MMMM') // January
Run Code Online (Sandbox Code Playgroud)

参考:http : //momentjs.com/