[英]Remove leading zeros from time format
我收到格式為'HH:mm:ss'
的字符串。 我想刪除前導零,但始終保留最后四個字符,例如m:ss
即使m
為零。 我正在格式化音頻持續時間。
例子:
00:03:15
=> 3:15
10:10:10
=> 10:10:10
00:00:00
=> 0:00
04:00:00
=> 4:00:00
00:42:32
=> 42:32
00:00:18
=> 0:18
00:00:08
=> 0:08
另一種選擇是使用 moment.js 庫。
這支持格式,例如
var now = moment('1-1-1981 2:44:22').format('h:mm:ss');
alert(now);
如果您使用 1 h 而不是 2,您將不會獲得前導 0。
時:分:秒
你可以這樣做:
var tc =['00:03:15', '10:10:10','00:00:00','04:00:00','00:42:32','00:00:18','00:00:08']; tc.forEach(function(t) { var y = t.split(":"); y[0] = y[0].replace(/^[0]+/g, ''); if(y[0] === '') { y[1] = y[1].replace(/^0/g, ''); } var r = y.filter(function(p) {return p!=='';}).join(':'); console.log(r); });
將時間分成 3 部分。 從第一部分中刪除前導零,如果第一部分為空,則從第二部分中刪除前導零,否則保留它。 然后加入所有這些丟棄空字符串。
當簡單地用一個小的 'h' moment(date).format('h:mm A')
從 time 中刪除第一個數字時,我遇到了 ZUL time 的問題:
我的const arrivalTime = "2022-07-21T12:10:51Z"
const result = moment(arrivalTime).format(('h:mm A')) // 2:10 PM
解決方案是將其轉換為 ISO 格式,然后格式化:
const arrivalTimeIsoFormat = arrivalTime.toISOString()
const result = moment(arrivalTimeIsoFormat, "YYYY-MM-DDTHH:mm:ss.SSS").format(('h:mm A')) // 12:10 PM
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.