Momentjs:如何将一个时区的日期/时间转换为 UTC 日期/时间

Shi*_*are 5 javascript momentjs moment-timezone

我有一个带时区的日期/时间,想将其转换为 UTC

const date = '2019-04-10T20:30:00Z';
const zone = 'Asia/Kuala_Lumpur';
const utcDate = moment(date).tz(zone).utc().format();
console.log('UTC Date : ', utcDate);
Run Code Online (Sandbox Code Playgroud)

我的日期变量是 UTC 的标准格式吗?如何将这个时区投射到另一个时区?

Fra*_*ion 7

UTC 时区由后缀“Z”表示,因此您需要删除"Z"和使用moment.tz(..., String)而不是moment().tz(String)因为第一个创建带有时区的时刻,第二个用于更改现有时刻的时区:

const date = '2019-04-10T20:30:00';
const zone = 'Asia/Kuala_Lumpur';
const utcDate = moment.tz(date, zone).utc().format();
console.log('UTC Date : ', utcDate);
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.24.0/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment-timezone/0.5.23/moment-timezone-with-data.min.js"></script>
Run Code Online (Sandbox Code Playgroud)