【发布时间】:2021-06-10 06:44:59
【问题描述】:
如何在 NODEJS 中将此“2021 年 6 月 9 日 01:50:00 PM”转换为 2021-06-09 13:50:00 日期格式。
【问题讨论】:
标签: node.js date timestamp datetime-format
如何在 NODEJS 中将此“2021 年 6 月 9 日 01:50:00 PM”转换为 2021-06-09 13:50:00 日期格式。
【问题讨论】:
标签: node.js date timestamp datetime-format
你可以这样转换:
const convertDateTo24Hour = (date) => {
var elem = date.split(',');
var msplit = date.split(' ');
let months = ["January", "February", "March", "April", "May", "June", "July",
"August", "September", "October", "November", "December"];
let index = months.indexOf(msplit[0]) + 1;
let newDate = msplit[2].replace(',','') + "-" + index + "-" + msplit[1];
var stSplit = elem[1].split(' ');
var abc = stSplit[1].split(":");
var stHour = abc[0];
var stMin = abc[1];
var stSec = abc[2];
var stAmPm = elem[1].split(" ");
if (stAmPm[2] == 'PM') {
if (stHour != 12) {
stHour = stHour * 1 + 12;
}
} else if (stAmPm[2] == 'AM' && stHour == '12') {
stHour = stHour - 12;
} else {
stHour = stHour;
}
return newDate + " " + stHour + ':' + stMin + ":" + stSec;
}
【讨论】:
您可以使用 Date 构造函数进行解析,然后将 Date.toLocaleString 格式化为 ISO 日期输出,如下所示:
const input = 'June 09 2021, 01:50:00 PM';
const inputFormat = 'MMMM DD YYYY H:mm:ss a';
const d = new Date(input);
console.log('Result:', d.toLocaleString('sv'));
【讨论】: