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-日期()、新日期()和ISODate之间的差异_Javascript_Date_Timezone_Utc - Fatal编程技术网

JavaScript-日期()、新日期()和ISODate之间的差异

JavaScript-日期()、新日期()和ISODate之间的差异,javascript,date,timezone,utc,Javascript,Date,Timezone,Utc,我见过这个问题的不同版本,但没有一个能满足我的需要 我想为MongoDB创建一个ISODate,我正在使用Node.js 在节点中,执行以下操作时: console.log(Date()); 我得到: 2016年9月26日星期一15:17:04 GMT-0400(美国东部时间)区别在于2016-09-26T19:17:04.731Z与GMT0时区相关,而2016年9月26日星期一15:17:04 GMT-0400(美国东部时间)与您的本地时区相关。两者都指向同一时间:) 您可以在中阅读有关数据

我见过这个问题的不同版本,但没有一个能满足我的需要

我想为MongoDB创建一个ISODate,我正在使用Node.js

在节点中,执行以下操作时:

console.log(Date());
我得到:


2016年9月26日星期一15:17:04 GMT-0400(美国东部时间)区别在于
2016-09-26T19:17:04.731Z
与GMT0时区相关,而
2016年9月26日星期一15:17:04 GMT-0400(美国东部时间)
与您的本地时区相关。两者都指向同一时间:)


您可以在

中阅读有关数据格式和时区的更多信息请注意2016-09-26T19:17:04.731Z末尾的
Z
? 它代表Zulu,意思是UTC时区(即GMT+000)

正如您在原始日期字符串中所看到的,
Mon-Sep 26 2016 15:17:04 GMT-0400(EDT)
有一个
GMT-0400
时区,我猜这是您居住的当地时间。 因此,事实上没有问题,只是同一时间的不同表示:

  • Date()
    创建本地日期
  • 新建日期()
    创建UTC日期

Date()
new Date()
是:

  • Date()忽略传递给它的任何参数,相当于
    new Date().toISOstring()

  • newdate(可选参数)
    在JS中创建一个
    time
    类型对象,您可以在该对象上执行以下操作:

  • getTime()
    上列出的其他
    Date.prototype
    功能

  • Date()只是本地时间的字符串表示形式

    • newdate()
      为您提供了一个可操纵的对象

还不到4小时。字符串末尾的
Z
表示它是UTC时间戳。您落后UTC 4小时,但这两个日期代表世界时的同一点。这可能是您的本地时区偏移操作
Date()
返回表示当前日期和时间的依赖于实现的字符串
new Date()
返回表示当前日期和时间的日期对象。;-)是的,我知道。我觉得自己像个笨蛋。:-)但我很高兴我问了这个问题。现在我不像以前那么糊涂了。我感谢大家的回应!
console.log(new Date());
var isodate = new Date().toISOString()
console.log(isodate);