js的Date.parse()方法和getTime()的陷阱

    xiaoxiao2021-12-14  16

    之前一直记得getTime()和Date.parse()方法都是返回某个时间到1970年1月1日0:00的毫秒数,但是这次遇到了问题。 当我使用Date.parser()的时候,返回的却是这个时间点到1970年1月1日08:00的毫秒数。下面是我的代码:

    function startTime() { let date = new Date, year = date.getFullYear(), month = date.getMonth() + 1, day = date.getDate(); return Date.parse(year + '-' + month + '-' + day) ; }

    原来当年月日中间用’-‘的符号的时候,它的解析是用UTC 时区处理,而不是用本地时区处理的,因此和格林尼治恰好差8小时,就成了这个时间点到1970年1月1日08:00的毫秒数。 解决的方法是中间用其他符号,如‘/’。 然后getTime()也会有一样的问题。

    转载请注明原文地址: https://ju.6miu.com/read-963966.html

    最新回复(0)