我有一个字符串中带有特定时区的输入日期。例如:
Sat May 20 2017 17:00:00 GMT-0300 (-03)
我想将此日期的时区更改为我的本地时区而不转换时间。好像输入日期在我的正确时区。
Sat May 20 2017 17:00:00 GMT+0200 (CEST)
我玩了一下瞬间,发现这个:
const date = moment(moment.utc('Sat May 20 2017 17:00:00 GMT-0300 (-03)').format('LLL'))
这是最简单的方法吗?我不喜欢瞬间对象的副本,但我找不到一种在"单次拍摄"中做到这一点的方法。
要在本地时间解析输入,您只需使用moment(String, String)
函数即可。正如文档所说:
默认情况下,时刻解析并以本地时间显示。
这是一个实时样本:
var input = 'Sat May 20 2017 17:00:00 GMT-0300 (-03)';
var m = moment(input, 'ddd MMM DD YYYY HH:mm:ss');
console.log(m.format());
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>