以12hr格式显示时间

时间:2013-08-27 17:55:00

标签: javascript date time

我需要你的帮助

如果以下代码能够以我要求的格式获取日期:dd/mm/yyyy

我如何以12小时的格式获得时间,即。 13:53 is 1:53pm

谢谢

<script type="text/javascript">
    function test() {
        var d = new Date(),
            m = d.getMonth() + 1,
            xdate = [d.getDate(), (m < 10) ? '0' + m : m, d.getFullYear()].join('/');

        var t = d.format("h:mm ss");

        alert("the date is:" + xdate + "time is:" + t)
    }
</script>

3 个答案:

答案 0 :(得分:1)

Demo jsFiddle

<强> JS

var d = new Date();
alert("the date is: " + d.toLocaleDateString() + "time is: " + d.toLocaleTimeString());

注意:这些功能并非完全支持跨浏览器

答案 1 :(得分:0)

使用此:

var d = new Date(),
    m = d.getMonth()+1,

    x = [d.getDate(), (m < 10) ? '0' + m : m, d.getFullYear()].join('/'),

    y = d.toLocaleTimeString().replace(/([\d]+:[\d]{2})(:[\d]{2})(.*)/, "$1$3")

alert(x +" "+ y)

取自: How do you display javascript datetime in 12 hour AM/PM format?

答案 2 :(得分:0)

这并不困难。试试这个:

<强> JS:

var formatTime = (function () {
function addZero(num) {
return (num >= 0 && num < 10) ? "0" + num : num + "";
}

return function (dt) {
var formatted = '';

if (dt) {
    var hours24 = dt.getHours();
    var hours = ((hours24 + 11) % 12) + 1;
    formatted = [formatted, [addZero(hours), addZero(dt.getMinutes())].join(":"), hours24 > 11 ? "pm" : "am"].join(" ");            
}
return formatted;
}
})();


console.log(formatTime(new Date())); 

在这里找到工作小提琴:http://jsfiddle.net/rRd2P/1/