javascript - 为什么在使用日期对象创建日期时收到 "Argument of type ' Date' is not assignable to parameter of type 'string | number'“?

标签 javascript typescript date

我有一个将日期对象作为参数的函数。此函数返回不同的日期。

function makeDate(date:Date) {
  return new Date(date); //<--error here
}
const newDate = new Date(); //
console.log(makeDate(newDate)); // Returns date object just fine

Vscode 中的 Typescript 显示以下错误:

“‘日期’类型的参数不可分配给‘字符串 | 数字’类型的参数。”

虽然官方文档声明 Date 构造函数可以采用数字(毫秒)、字符串(日期字符串),但通过传递另一个日期对象 创建日期对象似乎没有问题日期构造函数。因此,我希望不会收到任何错误。

我用 Google 搜索了这个结果,但我发现的 SO 和 Github 问题似乎没有回答这个问题或解释这个问题(或者至少我不理解与我的示例相关的解释)。

我应该得到这个错误吗?有办法解决吗?

谢谢!

最佳答案

因为构造函数需要一个字符串或数字,所以使用 getTime 将修复它

function makeDate(date:Date) {
  return new Date(date.getTime()); //<--error here
}
const newDate = new Date(); //
console.log(makeDate(newDate)); // Returns date object just fine

关于javascript - 为什么在使用日期对象创建日期时收到 "Argument of type ' Date' is not assignable to parameter of type 'string | number'“?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54600954/

相关文章:

javascript - D3.js 剪辑路径切断了我的图表的边缘

Angular 6 弃用 formControlName 和 ngModel 一起使用

typescript - Angular2 'recompile' 慢。 Visual Studio 2015。任务运行程序。 typescript

javascript - 将矩形响应转换为模型对象

javascript - 设置一个 JS 变量并在 html 标签中使用它

mysql - 意外结果 - MySQL SELECT 基于日期比较

php - 使用 mysql 返回 2 个日期之间的特定元素

android - 在 Android 中使用 future 日期限制日期选择器

javascript - Onclick 函数、innerHTML 和创建表格

typescript - Typescript 是否支持互斥类型?