在表单中,用户必须手动输入时间数据。不幸的是,前端开发人员忘记验证日期输入。因此,用户书写的时间没有标准格式。 我有一系列不同格式的时间。这是一个示例
["7am", "17:30", "04h50", "3.30am", "3pm30","03pm30","08:30 am", "5h00", "2h30", "5pm", "8:15"]
有没有办法(或库)将这些输入解析为 Javascript 时间标准格式?
["07:00 am", "05:30 pm", "04:50 am", ... "08:15 am"]
最佳答案
您可以使用momentjs并传递一个具有可能格式的数组。更好的方法是修复前端。例如,输入有输入时间。
const dates = ["7am", "17:30", "04h50", "3.30am", "3pm30","03pm30","08:30 am", "5h00", "2h30", "5pm", "8:15"];
const parsed = dates.map(d => moment(d, ['ha', 'h:mm', 'h[h]mm', 'h.mma', 'hamm']))
.forEach(e => console.log(e.format('h:mm a')));
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.23.0/moment-with-locales.min.js"></script>
关于javascript - 如何解析时间? (Javascript),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54275138/