代码:
moment.utc('2000-01-01T15:40:00.000Z', "YYYY-MM-DDTHH:mm:ss Z").local().format('hh:mma')
我正在尝试将字符串转换为12小时格式。期望结果是下午15:40。但它错误地给出了9:10 pm。如何解决这个问题?任何帮助都会被提前判断。谢谢提前
答案 0 :(得分:1)
您正在使用utc日期,然后使用local
将其转换为本地时区,因此它会始终将偏移量添加到其中,例如印度+5:30等,因此如果您不喜欢,请移除本地#39; t想要转换日期。如果您希望输出为15:40,则需要使用格式为:format('HH:mma')
大写H不小h。
使用此:
moment.utc('2000-01-01T15:40:00.000Z', "YYYY-MM-DDTHH:mm:ss Z").format('HH:mma');
查看DOC了解详情。
检查此代码段的输出:
let a = moment.utc('2000-01-01T15:40:00.000Z', "YYYY-MM-DDTHH:mm:ss Z").format('HH:mma');
console.log(a);

<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
&#13;
将打印&#34; 15:40 pm&#34;