前端moment库时间戳转标准时间不准确的问题解决
目录
前端moment库时间戳转标准时间不准确的问题解决
做前端项目的时候,根据后台返回的一个时间戳,将时间戳需要转换成标准时间,因为项目中有moment这个时间处理包,而且moment对于时间的转换比较强大,可以根据特定的格式进行转换,最终将时间戳转换成
年-月-日 时-分-秒
这种形式,但是转换出来,发现时间不太正确,这是我做的一个demo,
<script src="./moment.js"></script> <script> console.log(moment(1653039480000).format("YYYY-MM-DD HH:MM:SS")); //2022-05-20 17:05:00 console.log(new Date(1653039480000)); //Fri May 20 2022 17:38:00 GMT+0800 (中国标准时间) </script>
最终控制台里面打印的一个是17:05:00 一个是17:38:00,存在误差,后来看同事用moment库的时候,format后面的格式是 “YYYY-MM-DD hh:mm:ss”,这个时分秒全部都是用的小写,我也就把大写改成小写,最终的结果是:“2022-05-20 05:38:00”, 发现时间是准确了,但是小时是12制的,小时’HH’大小写可能是用来判断是否要转换成12制或者24制的时间,所以我最终的格式是这样子的:
<script src="./moment.js"></script> <script> console.log(moment(1653039480000).format('YYYY-MM-DD HH:mm:ss')); //2022-05-20 17:05:00 console.log(moment(1653039480000).format("YYYY-MM-DD hh:mm:ss")); //2022-05-20 05:38:00 正确应该是17:38:00 console.log(moment(1653039480000).format("YYYY-MM-DD HH:mm:ss")); //2022-05-20 17:38:00 console.log(new Date(1653039480000)); //Fri May 20 2022 17:38:00 GMT+0800 (中国标准时间)