javascript - 如何获得小时: "2-digit" for toLocaleString ("en-US") with AM/PM?的正确输出

标签 javascript date date-formatting hour

根据toLocaleString() MDN Documentation选项 hour: "2-digit" 应返回表示小时的 2 位数字,但如果区域设置为 en-US 并且格式为上午/下午。 (更新:上午/下午提及)

let d = new Date("2019-05-03 15:00:00").toLocaleString("en-US", {hour: "2-digit", minute: "2-digit"});
console.log(d);

是否有解决方法或其他简单方法来获取美国区域设置的 2 位数小时,并显示 AM 和 PM?

最佳答案

您只需在选项中明确禁用 12 小时表示:

    let d = new Date("2019-05-03 15:00:00").toLocaleString("en-US", {hour: "2-digit", minute: "2-digit", hour12: false});
    console.log(d);

2位参数可能与填充有关,但我认为这不是绝对必要的。我会考虑删除它。

    let d = new Date("2019-05-03 15:00:00").toLocaleString("en-US", {hour12: false});
    console.log(d);

关于javascript - 如何获得小时: "2-digit" for toLocaleString ("en-US") with AM/PM?的正确输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55988030/

相关文章:

c# - jquery 导致 asp.net 按钮无法点击

javascript - 数据表卡住 header

java - 为什么我的 SimpleDateFormat 解析不起作用?

java - Spring - DateFormat 未正确格式化中国的日期

java - JSR310 如何国际化月日模式?

vba - excel vba - 如何获取日期的日名称?

javascript - 为什么 <!-- 不会抛出语法错误?

javascript - 批量分配给多个 Javascript 对象

r - as.Date 不保留 R 中的小时和分钟信息

java - 将日期格式从 mm/dd/yyyy 转换为 MM DD, YYYY