📅  最后修改于: 2023-12-03 15:08:06.013000             🧑  作者: Mango
在使用 Javascript 进行开发时,有时需要将一个字符串表示的时间从 12 小时制转换为 24 小时制。本文将介绍如何在 Node.js 环境中将 hh:mm:ss AM 格式的时间转换为 24 小时制时间。
moment.js
库将字符串时间转换为日期对象,moment.js
是一个用于处理日期时间的 JavaScript 库,可以轻松地解析、验证、操作和格式化日期时间。const moment = require('moment');
const timeStr = '08:30:45 PM';
const dateObj = moment(timeStr, 'hh:mm:ss A').toDate();
getHours()
、getMinutes()
和 getSeconds()
方法分别获取小时、分钟和秒数,然后拼接成 24 小时制时间字符串。const hour = dateObj.getHours();
const minute = dateObj.getMinutes();
const second = dateObj.getSeconds();
const time24 = `${hour}:${minute}:${second}`;
padStart()
方法,将时、分、秒的数字转换成两位数。const hour = String(dateObj.getHours()).padStart(2, '0');
const minute = String(dateObj.getMinutes()).padStart(2, '0');
const second = String(dateObj.getSeconds()).padStart(2, '0');
const time24 = `${hour}:${minute}:${second}`;
下面是完整的将 hh:mm:ss AM 转换为 24 小时制时间的代码:
const moment = require('moment');
const timeStr = '08:30:45 PM';
const dateObj = moment(timeStr, 'hh:mm:ss A').toDate();
const hour = String(dateObj.getHours()).padStart(2, '0');
const minute = String(dateObj.getMinutes()).padStart(2, '0');
const second = String(dateObj.getSeconds()).padStart(2, '0');
const time24 = `${hour}:${minute}:${second}`;
console.log(time24);
输出:20:30:45
本文介绍了如何在 Node.js 环境中将 hh:mm:ss AM 格式的时间转换为 24 小时制时间。使用 moment.js
库可以方便地处理日期时间,使用 padStart()
方法可以在数字前补零。