将长日期与时间转换为mm-dd-yyyy hh:mm AM / PM

时间:2015-05-27 14:55:03

标签: javascript date datetime

我需要你的帮助。

如何使用javascript将长日期字符串与时间转换为日期/时间格式:mm-dd-yyyy hh:mm AM / PM

Wed May 27 10:35:00 EDT 2015

05-27-2015 10:35 AM

1 个答案:

答案 0 :(得分:3)

遗憾的是,JS Date对象没有灵活的内置“格式”方法,因此您必须手动(或使用插件/库)。以下是您手动完成的方法:

function formatDate(dateVal) {
    var newDate = new Date(dateVal);

    var sMonth = padValue(newDate.getMonth() + 1);
    var sDay = padValue(newDate.getDate());
    var sYear = newDate.getFullYear();
    var sHour = newDate.getHours();
    var sMinute = padValue(newDate.getMinutes());
    var sAMPM = "AM";

    var iHourCheck = parseInt(sHour);

    if (iHourCheck > 12) {
        sAMPM = "PM";
        sHour = iHourCheck - 12;
    }
    else if (iHourCheck === 0) {
        sHour = "12";
    }

    sHour = padValue(sHour);

    return sMonth + "-" + sDay + "-" + sYear + " " + sHour + ":" + sMinute + " " + sAMPM;
}

function padValue(value) {
    return (value < 10) ? "0" + value : value;
}

使用您的示例日期。 。

formatDate("Wed May 27 10:35:00 EDT 2015")  ===>  "05-27-2015 10:35 AM"