我想以 12 小时格式显示时间,而不使用AM和PM。例如3:45only 和 not 3:45 PMor 3:45 AM。如何修改toLocaleTimeString()以不显示PM AM但以 12 数字格式显示?
var minsToAdd = 45;
var time = "15:00";
var newTime = new Date(new Date("2000/01/01 " + time).getTime() + minsToAdd * 60000).toLocaleTimeString('en-US', { hour: '2-digit', minute: '2-digit', hour12: true });
console.log(newTime);Run Code Online (Sandbox Code Playgroud)
小智 7
.toLocaleTimeString() 没有任何覆盖来执行此操作。
有多种方法可以做到这一点。
将 AM/PM 替换为空白:
var minsToAdd = 45;
var time = "15:00";
var newTime = new Date(new Date("2000/01/01 " + time).getTime() + minsToAdd * 60000).toLocaleTimeString('en-US', { hour: '2-digit', minute: '2-digit', hour12: true });
console.log(newTime.replace("AM","").replace("PM",""));
Run Code Online (Sandbox Code Playgroud)
使用自定义 JavaScript 函数:
function formatTime(d) {
function z(n){return (n<10?'0':'')+n}
var h = d.getHours();
return (h%12 || 12) + ':' + z(d.getMinutes());
}
var minsToAdd = 45;
var time = "15:00";
var newTime = new Date(new Date("2000/01/01 " + time).getTime() + minsToAdd * 60000);
console.log(formatTime(newTime));
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14059 次 |
| 最近记录: |