javascript - 通过操作字符串将时间转换为 12 小时

标签 javascript jquery datetime time

"2015-06-23 14:00:00"

我尝试将上述日期时间格式化为 12 小时基数,但卡在某个地方。

function formatDate(raw_date){
    var right = raw_date.substring(10, 0);

    var hours = ((right[0].substring(2,0) + 11) % 12 + 1);
    var min = raw_date.substring(14,16);
    var suffix = right[1] >= 12 ? "PM":"AM";
    right[1] = ((right[1] + 11) % 12 + 1) + suffix;
    return hours + ':' + min + ' ' + suffix;
}

有人可以帮忙吗?我想要的输出是“23/06/2015 02:00 PM”

最佳答案

试试这个:

function formatDate(raw_date) {
    var right = new Date(raw_date);

    var currentHours = right.getHours();
    var timeOfDay = (currentHours < 12) ? "AM" : "PM";
    if (currentHours > 12) {
        currentHours -= 12;
    }
    return (right.getDate() + '/' + right.getMonth()+ '/' + right.getFullYear() +" "+ currentHours+ ":"+right.getMinutes() + timeOfDay);
}

alert(formatDate("2015-06-23 14:00:00"));

Demo

关于javascript - 通过操作字符串将时间转换为 12 小时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30864773/

相关文章:

javascript - map 未显示小省份

jquery - 使用 jQuery 向下滚动到某个位置

Python - 需要获取 Pandas 中每个 ID 的最后日期

MySQL事件根据表DATETIME执行

javascript - 计算 slider 的视口(viewport)高度

javascript - 简单的 jQuery droppable 不工作

javascript - 在 Internet Explorer 中使用带有非标准元素的 innerHTML 更改内容

jquery - Twitter 分享按钮在全窗口中打开

jquery - 为什么 $ ('<p><div></div></p>' ) 返回多于一个节点的数组?

Python:如何从 CSV 中获取工作日?