【发布时间】:2021-07-13 23:18:00
【问题描述】:
我有以下时间格式2h 34m 22s,我使用此代码将其解析为02:34:22:
const splitterArray = '2h 34m 22s'.split(' ');
let h = '00', m = '00', s = '00';
splitterArray.forEach(val => {
if (val.includes('h')) {
h = val.replace('h', '');
} else if (val.includes('m')) {
m = val.replace('m', '');
}
else if (val.includes('s')) {
s = val.replace('s', '');
}
});
console.log(`${h}:${m}:${s}`);
这也处理只有分钟和秒,或只有小时和秒或只有小时和分钟的情况。
只是检查是否有更好的方法来做到这一点,比如图书馆左右(也许也接受几天)。
【问题讨论】:
-
时间字符串是始终采用这种格式,还是在转换为“2h 34m 22s”格式之前的某个时间点将其作为日期字符串/对象?如果您有必要的日期字符串/对象,您可以使用 date-fns 或 momentjs 进行格式化
-
@ElbertBae 总是这样 .. 也可以包括天数(2d 22h 33m 12s)。
标签: javascript node.js typescript datetime time