Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/432.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 Date.toISOString()返回差异日期值_Javascript_Date_Toisostring - Fatal编程技术网

javascript Date.toISOString()返回差异日期值

javascript Date.toISOString()返回差异日期值,javascript,date,toisostring,Javascript,Date,Toisostring,我对如下示例所示的javascript Date.toISOString()函数感到困惑,为什么ISO格式的x的日期值变为1月 const date = new Date(); const x = (new Date(date.getFullYear(), date.getMonth() , 1)); console.log(date); \\Tue Feb 04 2020 11:11:12 GMT+0800 (Malaysia Time) console.log(x); \\Sat Feb

我对如下示例所示的javascript Date.toISOString()函数感到困惑,为什么ISO格式的x的日期值变为1月

const date = new Date();
const x = (new Date(date.getFullYear(), date.getMonth() , 1));

console.log(date); \\Tue Feb 04 2020 11:11:12 GMT+0800 (Malaysia Time)
console.log(x); \\Sat Feb 01 2020 00:00:00 GMT+0800 (Malaysia Time)

console.log(date.toISOString()); \\2020-02-04T03:11:12.330Z
console.log(x.toISOString()); \\2020-01-31T16:00:00.000Z

这是由于时区从GMT+08转换为UTC。函数将日期转换为UTC(注意,您可以通过字符串末尾的“Z”确定日期是否在UTC时区)

2020年2月1日00:00:00 GMT+0800
转换为ISO字符串时,日期缩短8小时,因此成为
2020年1月31日16:00:00