数据库时间与前端时间不一致问题解决方案
数据库时间是对的,但是返回给前端又不对,可能是因为数据库返回的时间是以UTC时间为基准,而前端需要的是本地时间。可以使用JavaScript的Date对象将UTC时间转换为本地时间,例如:
// 假设从数据库中获取的时间是 '2021-07-01T12:34:56.789Z'
const dbTime = new Date('2021-07-01T12:34:56.789Z');
const localTime = new Date(dbTime.getTime() + dbTime.getTimezoneOffset() * 60 * 1000);
console.log(localTime); // 输出本地时间
其中,dbTime.getTime() 返回自1970年1月1日以来的毫秒数,dbTime.getTimezoneOffset() 返回本地时区与UTC时区之间的分钟数。通过将这两个值相加,就可以得到本地时间的毫秒数,然后再通过new Date()方法创建一个本地时间对象。
原文地址: https://www.cveoy.top/t/topic/nokL 著作权归作者所有。请勿转载和采集!