【发布时间】:2018-07-13 06:39:08
【问题描述】:
【问题讨论】:
-
moment('2018-04-29', 'YYYY-MM-DD').format('DD MMM, YYYY')
标签: javascript node.js date formatting momentjs
【问题讨论】:
moment('2018-04-29', 'YYYY-MM-DD').format('DD MMM, YYYY')
标签: javascript node.js date formatting momentjs
要以29 Apr, 2018 格式获取您的日期,您可以使用两个选项:
你可以使用momentjs .format() method,像这样:
var dateStr = '2018-04-29';
var dateWithMoment = moment(dateStr, 'YYYY-MM-DD').format('DD MMM, YYYY');
您可以像这样使用toLocaleString() method:
var options = {
year: "numeric",
month: "short",
day: "numeric"
};
console.log((new Date(dateStr)).toLocaleString("en-US", options));
演示:
这是一个演示,展示了这两种方法:
var dateStr = '2018-04-29';
var dateWithMoment = moment(dateStr, 'YYYY-MM-DD').format('DD MMM, YYYY');
console.log(dateWithMoment);
var options = {
year: "numeric",
month: "short",
day: "numeric"
};
console.log((new Date(dateStr)).toLocaleString("en-US", options));
<script src="http://momentjs.com/downloads/moment.js"></script>
【讨论】:
var givenDate = '2018-04-29'
var resultDate = moment(givenDate, 'YYYY-MM-DD').format('DD MMM, YYYY')
【讨论】:
如果不适合你,你可以像这样使用 vanilla js:
const monthNames = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"];
// Date to convert
let myDate = "2018-04-29";
let components = myDate.split('-');
// 29 Apr, 2018
let newDate = components[2] + " " +monthNames[parseInt(components[1]) - 1] +", " +components[0];
console.log(newDate);
【讨论】:
Momentjs 应该做你想做的就好了。 (见 Li357 的回答)。
如果您正在寻找替代品,您可能需要查看:
【讨论】: