如何解决如何仅使用 date-fns 格式化时间
使用 date-fns,如何在使用 date-fns 的代码段下将其转换。 基本上,输入就像“01:40:20 PM”或“1:4:2 PM”或“3:2 PM”或“03:2 PM” 并且期望输出一致,例如 '03:02:00 PM' ,采用 hh:mm:ss A 格式。
我找不到任何只允许使用时间格式化的特定方法。
使用moment js,效果如下:
if (moment(timeString,['h:m:s A','h:m A'],true).isValid()) {
return moment(timeString,'hh:mm:ss A').format('hh:mm:ss A');
}
解决方法
希望这将有助于将任何类似时间的字符串转换为您想要的格式。
function getTimeFormat(time) {
let ta = time.trim().split(" ");
let slots = ta[0].split(":");
while(slots.length<3) slots.push(""); // make sure we have h:m:s slots
return slots.map( n => n.padStart(2,'0')).join(":") + " " + (ta.length>1 ? ta[1].trim().toUpperCase() : "");
}
console.log(getTimeFormat('3 pm'));
console.log(getTimeFormat('3:1 pm'));
console.log(getTimeFormat('3:15 pm'));
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。