【问题标题】:RangeError: Invalid time valueRangeError:时间值无效
【发布时间】:2019-06-25 00:16:06
【问题描述】:

我在启动服务器时经常遇到错误。这是错误:

RangeError:时间值无效 在 Date.toISOString ()

代码如下:

var start = timestamp;
const expiryDate = (new Date(start)).toISOString().split('T')[0];

【问题讨论】:

  • 当我尝试它时工作正常(通过用 Date.now() 替换时间戳)
  • 那么timestamp是什么?
  • 您应该通过添加console.log(timestamp); 来调试您的代码,以检查出现错误时的值是什么,并将其添加到问题中......
  • 没有看到timestamp 是什么,会导致❓相对没有生产力。

标签: javascript node.js


【解决方案1】:

当 Date 对象包含无效日期时会发生此异常。

new Date('undefined').toISOString()

在此示例中,可以毫无问题地创建 Date 对象,但 toISOString 函数会引发错误。

要解决您的问题,您需要确保时间戳变量包含有效的日期字符串。

【讨论】:

  • 这发生在我身上,因为我使用了一个表示时间戳而不是数字的数字字符串(比如 '1606878000000' 而不是 1606878000000,如果你从 HTML 元素中提取值可能会发生这种情况) .我使用parseInt()解决了它。
猜你喜欢
  • 2021-08-30
  • 2019-12-23
  • 1970-01-01
  • 2020-12-31
  • 2017-10-31
  • 2021-08-22
  • 2020-10-31
  • 2021-06-16
相关资源
最近更新 更多