转换Typescript中的日期类型

转换Typescript中的日期类型,c,angular,date,typescript,C,Angular,Date,Typescript,所以我从C#Rest服务器获取数据。数组的一个值的类型为Date。当我想用它计算时,例如: let difference = date1.getTime() - date2.getTime(); 我得到以下错误: date1.getTime不是函数 我猜错误是,Java的Date与Typescript的日期不一样 是否有方法将Date(Java)类型的值转换为Date(TypeScript)类型 或者我错了,错误是由其他原因引起的?您需要将日期对象转换为日期对象,以便应用其方法 let dif

所以我从C#Rest服务器获取数据。数组的一个值的类型为Date。当我想用它计算时,例如:

let difference = date1.getTime() - date2.getTime();
我得到以下错误:

date1.getTime不是函数

我猜错误是,Java的
Date
与Typescript的日期不一样

是否有方法将
Date
(Java)类型的值转换为
Date
(TypeScript)类型


或者我错了,错误是由其他原因引起的?

您需要将日期对象转换为日期对象,以便应用其方法

let difference = new Date(date1).getTime() - new Date(date2).getTime();

您需要将日期对象转换为日期对象,以便应用其方法

let difference = new Date(date1).getTime() - new Date(date2).getTime();

JSON没有日期对象。通常会发送一个字符串,请仔细查看您的API提供了什么。有时它是一个时间戳-取决于您的GSON/Jackson/。。配置时间戳也需要时区偏移量,因此我更喜欢包含时区的基于字符串的格式。通常是这样的:
“2018-03-10T09:06:08.068Z”

通过将此字符串传递到构造函数中,可以将其读入JavaScript日期:
newdate(dateString)
。现在您可以访问这些方法了

Void已经发布了一个普通的JS实现,但是如果您使用lib来实现它,它会变得更加容易。我强烈推荐date fns。它接受字符串,因此无需创建新日期:

差异毫秒(dateLeft、dateRight)

文件:
JSON没有日期对象。通常会发送一个字符串,请仔细查看您的API提供了什么。有时它是一个时间戳-取决于您的GSON/Jackson/。。配置时间戳也需要时区偏移量,因此我更喜欢包含时区的基于字符串的格式。通常是这样的:
“2018-03-10T09:06:08.068Z”

通过将此字符串传递到构造函数中,可以将其读入JavaScript日期:
newdate(dateString)
。现在您可以访问这些方法了

Void已经发布了一个普通的JS实现,但是如果您使用lib来实现它,它会变得更加容易。我强烈推荐date fns。它接受字符串,因此无需创建新日期:

差异毫秒(dateLeft、dateRight)

文件:

这取决于发送日期的格式。是ms-since-epoch还是字符串格式的分区日期时间?您猜对了,Java日期与TypeScript日期无关。但您可以使用原始/原始数据从一个转换到另一个。例如,不传输Date对象,而是传输Date.getTime()以传输毫秒值。在TypeScript中,您可以使用这些毫秒创建一个新的日期。或者您可以使用矩库解析日期。它不依赖于格式,甚至不依赖于c#或python。它适用于所有环境,可能有助于进一步进行差分区域转换,更重要的是,它取决于通过REST发送日期的格式。是ms-since-epoch还是字符串格式的分区日期时间?您猜对了,Java日期与TypeScript日期无关。但您可以使用原始/原始数据从一个转换到另一个。例如,不传输Date对象,而是传输Date.getTime()以传输毫秒值。在TypeScript中,您可以使用这些毫秒创建一个新的日期。或者,您可以使用矩库解析日期。它不依赖于格式,甚至不依赖于c#或python。它适用于所有环境,并且可能有助于进一步进行差分区域转换和其他更多操作