在24秒的Javascript中将24小时时间转换为12小时

时间:2015-03-16 11:47:25

标签: javascript date time

我一直在研究互联网,但无法找到解决方案。我有这个脚本显示 2015年3月16日星期一,16:59:40 格式的时间,你可以看到这是24小时格式,秒没有运行。脚本是

<script type='text/javascript'>
document.getElementById("para1").innerHTML = formatAMPM();

function formatAMPM() {
var d = new Date(),

    seconds = d.getSeconds().toString().length == 1 ? '0'+d.getSeconds() : d.getSeconds(),
    minutes = d.getMinutes().toString().length == 1 ? '0'+d.getMinutes() : d.getMinutes(),
    hours = d.getHours().toString().length == 1 ? '0'+d.getHours() : d.getHours(),
    ampm = d.getHours() >= 12 ? 'pm' : 'am',
    months = ['January','February','March','April','May','June','July','August','September','October','November','December'],
    days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
return days[d.getDay()]+', '+months[d.getMonth()]+' '+d.getDate()+', '+d.getFullYear()+', '+hours+':'+minutes+':'+seconds+' '
}
</script>

HTML是

<span id='para1'></span>

您可以在https://jsfiddle.net/g70rsr1L/看到当前运行的代码 我想要的只是将24小时格式转换为12小时,并在其中运行一个秒钟脚本。

由于

1 个答案:

答案 0 :(得分:0)

来自您的代码,它可以帮助您:

document.getElementById("para1").innerHTML = formatAMPM();

function formatAMPM() {
var d = new Date(),

    seconds = d.getSeconds().toString().length == 1 ? '0'+d.getSeconds() : d.getSeconds(),
    minutes = d.getMinutes().toString().length == 1 ? '0'+d.getMinutes() : d.getMinutes(),
    hours = d.getHours().toString().length == 1 ? '0'+d.getHours() : d.getHours(),
    ampm = d.getHours() >= 12 ? 'pm' : 'am',
            hour = d.getHours() >= 12 ? parseInt(d.getHours()) - 12 : d.getHours(),
    months = ['January','February','March','April','May','June','July','August','September','October','November','December'],
    days = ['Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'];
return days[d.getDay()]+', '+months[d.getMonth()]+' '+d.getDate()+', '+d.getFullYear()+', '+hour+':'+minutes+':'+seconds+' '+ ampm;
}

在setInterval函数中调用此函数并保持一秒的间隔。