Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Javascript中正确解析日期?_Javascript_Date - Fatal编程技术网

如何在Javascript中正确解析日期?

如何在Javascript中正确解析日期?,javascript,date,Javascript,Date,如何在上面的代码中正确解析日期,以便将这两个日期视为相等 看起来date2对象没有按照我想要的方式正确创建。如何更正此问题?以下是日期文档中的解释: 注意:由于浏览器差异和不一致,强烈建议使用日期构造函数(和date.parse,它们是等效的)解析日期字符串。仅按惯例支持RFC 2822格式字符串对ISO 8601格式的支持不同之处在于,仅日期字符串(例如“1970-01-01”)被视为UTC,而非本地。 解析正确,但在第二个示例中,时间被视为UTC,然后在本地时区的12月28日转换 更多资讯:

如何在上面的代码中正确解析日期,以便将这两个日期视为相等


看起来date2对象没有按照我想要的方式正确创建。如何更正此问题?

以下是日期文档中的解释:

注意:由于浏览器差异和不一致,强烈建议使用日期构造函数(和date.parse,它们是等效的)解析日期字符串。仅按惯例支持RFC 2822格式字符串对ISO 8601格式的支持不同之处在于,仅日期字符串(例如“1970-01-01”)被视为UTC,而非本地。

解析正确,但在第二个示例中,时间被视为UTC,然后在本地时区的12月28日转换

更多资讯:
以下是日期文档中的解释:

注意:由于浏览器差异和不一致,强烈建议使用日期构造函数(和date.parse,它们是等效的)解析日期字符串。仅按惯例支持RFC 2822格式字符串对ISO 8601格式的支持不同之处在于,仅日期字符串(例如“1970-01-01”)被视为UTC,而非本地。

解析正确,但在第二个示例中,时间被视为UTC,然后在本地时区的12月28日转换

更多资讯:

不建议使用可能重复的解析字符串,因为-它建议手动解析(或使用库)@J.Titus-这是关于解析日期,而不是比较日期。正如UnholySheep所说,使用库或手动执行。如果您只支持一种格式,则解析函数可以只有两行,请参阅。@RobG“…以便将两个日期视为相等。”听起来像是比较。不建议使用可能重复的解析字符串-建议手动(或使用库)解析它@J.Titus-这是关于解析日期的,不比较它们。正如邪恶之羊所说,使用一个库或手动操作。如果您只支持一种格式,则解析函数可以只有两行,请参见。@RobG“…以便将两个日期视为相等。”对我来说,这听起来像是比较。这是一个好信息,但实际上并没有回答以下问题:如何在Javascript中正确解析日期。;-)正确解析日期。结果出乎意料。信息不错,但它实际上并没有回答问题:如何在Javascript中正确解析日期。;-)正确解析日期。结果出乎意料。
var date1 = new Date("Dec 29, 2016");
var date2 = new Date("2016-12-29");

console.log(date1);
//This prints "Thu Dec 29 2016 00:00:00 GMT-0500 (EST)"
console.log(date2);
//This prints "Wed Dec 28 2016 19:00:00 GMT-0500 (EST)"

console.log(date1 == date2);
//Prints false