moment组件加载时间遇到的时区变换问题
首先,存入我们想存储的时间“2018-11-11 00:00:00
”,具体存入数据库的时间为UTC时间“2018-11-10T16:00:00.000Z
”,此时将时间从数据库中读取到的时间字符串为“2018-11-10 16:00:00
”,
moment(("2018-11-10 16:00:00"), ('YYYY-MM-DD HH:mm:ss') //直接载入字符串
moment(("2018-11-10 16:00:00"), ('YYYY-MM-DD HH:mm:ss')).utc() //先载入字符串,然后转为utc
moment(("2018-11-10 16:00:00"), ('YYYY-MM-DD HH:mm:ss')).utcOffset("+08:00") //先载入字符串,然后增加utc偏移
moment.utc(("2018-11-10 16:00:00"), ('YYYY-MM-DD HH:mm:ss')) //以utc载入字符串
moment.utc(("2018-11-10 16:00:00"), ('YYYY-MM-DD HH:mm:ss')).utcOffset("+08:00") //以utc载入字符串,然后增加偏移
得到的结果分别为:
显示 | 是否为时区 | 时区偏移 | 结果是否正确 |
---|---|---|---|
2018-11-10T08:00:00.000Z | false | - | 显示少了16小时,时间少了8小时 |
2018-11-10T08:00:00.000Z | true | 0 | 显示少了16小时,时间少了8小时 |
2018-11-10T16:00:00.000Z | true | 480 | 显示少了8小时,时间少了8小时 |
2018-11-10T16:00:00.000Z | true | 0 | 显示少了8小时,时间正常 |
2018-11-11T00:00:00.000Z | true | 480 | 显示正常,时间正常 |
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »