时间差异
node获取当前时间获取的是utc时间
数据库自动存入的时间
而本地时间
你会发现ndoe跟数据库里保存都是utc的时间也就是英国格林威治的时间,而我电脑显示的时间跟node获取的当前时间和数据库存入的时间相差啦8个小时,这是因为utc(世界协调时是以英国格林威治的时间为标椎。utc时间与北京时间相差8个小时,utc的凌晨相当于北京时间的上午8点
但是时间戳是一样的,因为时间戳是某个utc时间到utc1970-1-1凌晨经过的毫秒数,时间戳是表示的utc时间的差异
服务器和数据库必须使用utc时间
客户端需要展示本地时间,且还是根据同地区的客户友好的显示时间
使用moment库解决时间差异问题
民间中文网:http://momentjs.cn/
// 全局语言环境
moment.locale("zh-cn");
//得到当前时间,moment对象
// console.log(moment().toString());
// console.log(moment.utc().toString());
//得到当前时间戳
// console.log(moment().valueOf(), +moment());
// console.log(moment.utc().valueOf(), +moment.utc())