节点js中的日期格式转换

时间:2015-08-26 03:45:55

标签: javascript mysql node.js datetime momentjs

我正在使用一个表单,用户可以从{* 1}}格式从日期时间选择器中选择日期时间。现在我想将格式转换为dd-mm-yyyy hh:mm:ss格式以存储在mysql表中。

我试过像这样的时刻js

yyyy-mm-dd hh:mm:ss

where status.date我将从用户从datetimepicker中选择datetime的表单发布。

请帮忙

2 个答案:

答案 0 :(得分:2)

你可以这样做,而不是拥有一些模块。

var fd = status.date;
var fromDate = fd.split(" ");
console.log(formatDate(fromDate[0],fromDate[1] + " " + fromDate[2]));// 

并在那里添加这些功能。

function formatDate(date, time2) {
    var from = date.split("-");
    var f = from[2] + "-" + from[1] + "-" + from[0];
    var time1 = time(time2);

    return f + " " + time1;
}

function time(time) {
    var hours = Number(time.match(/^(\d+)/)[1]);
    var minutes = Number(time.match(/:(\d+)/)[1]);
    var AMPM = time.match(/\s(.*)$/)[1];
    if ((AMPM == "PM" || AMPM == "pm") && hours < 12)
        hours = hours + 12;
    if ((AMPM == "AM" || AMPM == "am") && hours == 12)
        hours = hours - 12;
    var sHours = hours.toString();
     if (hours < 10)
        sHours = "0" + sHours;
    if (minutes < 10)
        sMinutes = "0" + sMinutes;
   return (sHours + ":" + sMinutes);

}

答案 1 :(得分:1)

首先将其转换为ISOString,然后通过replace方法消除不需要的东西。

var date = new Date();
date.toISOString().replace(/T/, " ").replace(/\..+/,'')

source: chbrown's answer