📅  最后修改于: 2023-12-03 15:15:27.870000             🧑  作者: Mango
在 HackerRank,您经常需要转换不同的时间格式。在这个时间转换解决方案中,我们将展示如何将一个包含 AM/PM 时间格式的字符串转换为 24 小时格式。例如,将 '07:05:45PM' 转换为 '19:05:45'。
以下是我们的解决方案,其中使用了字符串分割、数组拼接和条件运算符。
function timeConversion(s) {
let timeArr = s.slice(0, 8).split(':');
timeArr[0] = (s.indexOf('PM') > -1) ? (timeArr[0] == 12 ? '12' : Number(timeArr[0]) + 12) : (timeArr[0] == 12 ? '00' : timeArr[0]);
return timeArr.join(':');
}
让我们更详细地解释一下代码:
slice()
方法获取原始字符串的前 8 个字符,即时间。split()
方法将字符串按冒号分割成一个数组,其中包括小时、分钟和秒。我们的时间转换解决方案使用了字符串分割、数组拼接和条件运算符。使用这种方法,我们可以将包含 AM/PM 时间格式的字符串转换为 24 小时格式。希望这个解决方案对您有所帮助!