我正在尝试获取两个日期和时间作为一串数字(纪元),以便可以对其进行比较。一个是新的Date()

today = new Date().valueOf();


一种是来自api响应的格式:

scheduleDate: "2019-07-22T00:00+01:00"


问题是我正在尝试以正确的格式获取返回的日期。当我尝试

var scheduleDate = new Date(scheduleDate).toISOString()
console.log("converted date:" + scheduleDate);


我得到错误:


  无效的时间值


如何将返回的日期转换为纪元格式?

谢谢

最佳答案

您的scheduleDate变量必须为undefined。您确定分配正确吗?

javascript -  Angular 6:无效的时间值-LMLPHP

(function() {

    //number (milleseconds)
    const today = new Date().valueOf();

    //string
    const scheduleDate = undefined; //"2019-07-22T00:00+01:00";

    const scheduleDate2 = new Date(scheduleDate).toISOString()

    console.log(typeof today);
    console.log(typeof scheduleDate);

    console.log("converted date: " + scheduleDate);
}
)();


更令人担忧的是,为什么将日期字符串转换为日期,然后又转换回字符串(相同值)。

10-07 17:13