javascript - Angular 6:无效的时间值
问题描述
我试图将两个日期和时间作为一串数字(纪元),以便我可以比较它们。一个是新的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
. 你确定它被正确分配了吗?
(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);
}
)();
更令人担忧的是,为什么要将日期字符串转换为日期,然后再转换回字符串(相同的值)。
推荐阅读
- snakemake - 从 Snakemake 中的 config.yaml 访问文件路径
- c - 为什么这两个 C 语句都产生相同的输出
- ansible - 如果不是 FQDN,则 Ansible 附加主机名
- python - 如何解决 #error:pip install psutil 期间不支持架构?
- swift - 当一个小部件打开一个应用程序时,应用程序是否可以知道小部件的大小
- ios - 为什么应用程序在创建图像时有时会崩溃?
- sql - 将 Vertica 中的记录随机拆分为测试和控制
- java - Eclipse H2 数据库未连接
- python - 导出动画 ffmpeg 时出错 - Matplotlib
- python - 如何自己在 Pytorch 中实现 Batchnorm2d?