以12小时格式显示时间

Displaying the time in 12hr format

本文关键字:时间 显示 格式 12小时      更新时间:2023-09-26

我需要你的帮助

如果下面的代码能够以我要求的格式获得日期: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>

演示jsFiddle

JS

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

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

使用此:

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)

取自:如何以12小时AM/PM格式显示javascript日期时间?

这并没有那么难。试试这个:

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/