将 new Date() 转换为打字稿中的 UTC 格式,角度

RN9*_*N92 2 utc datetime-format typescript angular

我有一个来自 angular 的请求,它将日期发送到服务器。

const activationDate = new Date();
Run Code Online (Sandbox Code Playgroud)

我需要在发送请求之前将其转换为 UTC 日期格式

在我的模型中,我有一个 Date 变量来将日期传递给服务器

export class PersonDetails {
  id: string;
  activationDate?: Date;
}
Run Code Online (Sandbox Code Playgroud)

RN9*_*N92 7

personModel: PersonDetail;    

const activationDate = new Date();

this.personModel.activationDate = new Date(activationDate.getUTCFullYear(),
                                            activationDate.getUTCMonth(),
                                            activationDate.getUTCDate(),
                                            activationDate.getUTCHours(),
                                            activationDate.getUTCMinutes(),
                                            activationDate.getUTCSeconds()
                                            );
Run Code Online (Sandbox Code Playgroud)

或 可以使用单独的方法来获取 UTCDate

const activationDate = this.getNowUTC();    

private getNowUTC() {
  const now = new Date();
  return new Date(now.getTime() + (now.getTimezoneOffset() * 60000));
}
Run Code Online (Sandbox Code Playgroud)

一篇关于转换日期时间的好文章


Maa*_*rti 6

您可以使用toISOString()函数(MDN 网络文档)。

时区始终为零 UTC 偏移量。

const activationDate = new Date().toISOString();
Run Code Online (Sandbox Code Playgroud)