gpt4 book ai didi

javascript - 从 toLocaleTimeString 中删除秒数

转载 作者:可可西里 更新时间:2023-11-01 02:08:07 27 4
gpt4 key购买 nike

Date.prototype.toLocaleTimeString() 方法返回一个字符串,该字符串具有该日期时间部分的语言敏感表示。它适用于现代浏览器。

不幸的是, native 函数无法阻止秒的输出。默认情况下,它输出时间格式,如 hh:mm:sshh:mm AM/PM 等。

second: The representation of the second. Possible values are "numeric", "2-digit".

来源:MDN reference

这意味着,您不能使用类似{second: false} 的东西。


我正在寻找一个简单愚蠢的解决方案,以hh:mm:ss 格式的字符串中删除秒数

var date = new Date();
var time = date.toLocaleTimeString(navigator.language, {hour: '2-digit', minute:'2-digit'});
console.log(time); // 15:24:07

这个正则表达式工作:

time.replace(/:\d\d( |$)/,'');
time.replace(/(\d{2}:\d{2})(?::\d{2})?(?:am|pm)?/);

最佳答案

您可以使用:

var time = date.toLocaleTimeString(navigator.language, {hour: '2-digit', minute:'2-digit'})
.replace(/(:\d{2}| [AP]M)$/, "");

顺便说一句 Google Chrome 返回

new Date().toLocaleTimeString(navigator.language, {hour: '2-digit', minute:'2-digit'});

作为“12:40 PM”

关于javascript - 从 toLocaleTimeString 中删除秒数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24086741/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com