node mysql 时间相差8小时

在node代码中测试, 效果如下:

> var now = new Date();
undefined
> now;
2019-10-17T06:10:47.919Z
> now.toLocaleString();
'2019/10/17 下午2:10:47'

如果在express的res.send中直接将这个Date对象返回, Date对象会自动转化为字符串 2019-10-17T06:10:47.919Z , 初看下去发现时间与本地时间差了8小时, 其实, 这并不是问题.

这个时间字符串中的T和Z, 表示这是一个ISOString, 接收这个字符串时, 只需要在js中将整个字符串作为参数, 构造新的Date对象, 差的8小时就回来了.

下面是chrome的控制台中测试结果:

> new Date('2019-10-17T06:10:47.919Z')
< Thu Oct 17 2019 14:10:47 GMT+0800 (中国标准时间)
> new Date()
< Thu Oct 17 2019 14:17:29 GMT+0800 (中国标准时间)

 

猜你喜欢

转载自www.cnblogs.com/vision2015/p/11691781.html