如何在javascript中转换时间hhmm格式?

如何在javascript中转换时间hhmm格式?,javascript,momentjs,Javascript,Momentjs,这里我得到的时间值为1700。我想把它转换成这样的格式5pm。我试着用momentpackage来实现这一点。它有很多选择,我无法找到相关的格式来实现我正在寻找的输出 结果必须是这样的: 1700->下午5点 上午9点->9点 我现在的impl是 moment("1500", "hh").format('LT') => 3:00 PM 这里的输出是不同的,它必须像下午3点 我有没有办法做到这一点。请帮助我提供您的建议和反馈Themoment().

这里我得到的时间值为
1700
。我想把它转换成这样的格式
5pm
。我试着用
moment
package来实现这一点。它有很多选择,我无法找到相关的格式来实现我正在寻找的输出

结果必须是这样的:

1700->下午5点

上午9点->9点

我现在的impl是

moment("1500", "hh").format('LT') => 3:00 PM

这里的输出是不同的,它必须像下午3点


我有没有办法做到这一点。请帮助我提供您的建议和反馈

The
moment().format(“hA”)满足您的需要。请参见

您不需要使用momentjs;如果确定输入时间始终为4位字符串,则可以创建自己的简单格式化函数(以下代码只是基本概念,您可能希望对其进行一些改进以更好地满足您的需要):

函数格式化时间(str){
const[hh,mm]=str.match(/[0-9]{2}/g);
const hours=parseInt(hh);
常数ampm=小时数<12?'am':'pm';
返回`${hours===12?hours:hours%12}${parseInt(mm)>0?`:${mm}`:''}${ampm}`
}
//试验

['1500','0900','1345','0000','1217','1805'].forEach(item=>console.log(formatTime(item))已经是相同的post nope,它是不同的时刻(“1500”)。格式(“hA”)=>12AM这是我得到的输出。您应该在矩()函数中指定输入格式,例如:
矩('1500','hh')。格式(“hA”);“下午3点”