为什么这些date在从MongoDb获取后导致“无效date”?
我只是想添加一天,然后在那个新的一天使用Moment.Js来表示12:00 AM。 然而,每当我这样做,然后保存它,MongoDB返回date为Invalid Date
…为什么?
date = new Date(Date.UTC(2000, 2, 13)); date = moment.utc( date ); date = date.add(1, 'd');
在保存之前,date看起来像这样: date: Sun Feb 13 2000 16:00:00 GMT-0800 (PST)
date如何在我的数据库中查看: 2000-02-14 00:00:00.000Z
但是,从数据库中获取时显示为无效:
{ date: "Invalid Date" day: "02/13/2000" full_date: "02/13/2000 24" hour: "24" }
此外,所有这样构build的日子将导致Invalid Dates
2000-02-14 00:00:00.000Z
在Javascript中不是有效的date格式。
ECMAdate时间string格式
YYYY-MM-DDTHH:mm:ss.sssZ
参考date 。
它在时间元素中缺less了T
在你的控制台试试这个:
>> (new Date("2000-02-14 00:00:00.000Z")).toString() << "Invalid Date"
与
>> (new Date("2000-02-14T00:00:00.000Z")).toString() << "Mon Feb 14 2000 01:00:00 GMT+0100 (CET)"
请注意,一些浏览器接受前者,如铬,但它是不标准的,并像往常那样痛苦。
Firefox在date上相当严格。