【发布时间】:2017-10-18 04:02:40
【问题描述】:
代码:
moment.utc('2000-01-01T15:40:00.000Z', "YYYY-MM-DDTHH:mm:ss Z").local().format('hh:mma')
我正在尝试将字符串转换为 12 小时格式。预期结果是下午 15:40。但它给出的错误为晚上 9:10。如何解决这个问题?任何帮助都会得到帮助。提前致谢
【问题讨论】:
标签: react-native momentjs
代码:
moment.utc('2000-01-01T15:40:00.000Z', "YYYY-MM-DDTHH:mm:ss Z").local().format('hh:mma')
我正在尝试将字符串转换为 12 小时格式。预期结果是下午 15:40。但它给出的错误为晚上 9:10。如何解决这个问题?任何帮助都会得到帮助。提前致谢
【问题讨论】:
标签: react-native momentjs
您正在使用 utc 日期,然后使用 local 将其转换为本地时区,因此它将始终添加偏移量,例如印度 +5:30 等,因此如果您不这样做,请删除本地想要转换日期。如果您希望输出为 15:40,则需要使用格式为:format('HH:mma')capital H not small h。
使用这个:
moment.utc('2000-01-01T15:40:00.000Z', "YYYY-MM-DDTHH:mm:ss Z").format('HH:mma');
查看DOC了解更多详情。
检查这个 sn-p 的输出:
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>
它将打印 "15:40pm"
【讨论】: