判斷是否同一天 :
isSameDay(timeStampA, timeStampB) { let dateA = new Date(timeStampA); let dateB = new Date(timeStampB); return (dateA.setHours(0, 0, 0, 0) == dateB.setHours(0, 0, 0, 0)); }
判斷是否同一周:
isSameWeek(timeStampA, timeStampB) { let A = new Date(timeStampA).setHours(0, 0, 0, 0); let B = new Date(timeStampB).setHours(0, 0, 0, 0); var oneDayTime = 1000 * 60 * 60 * 24; var old_count = parseInt(A / oneDayTime); var now_other = parseInt(B / oneDayTime); return parseInt((old_count + 4) / 7) == parseInt((now_other + 4) / 7); }
思路1:獲取到目前的時間,然后轉化到今天的凌晨的時間點的毫秒數,然后再去拉取今天星期幾,再往前推對應的天數,找到當前天數所在的周一的凌晨點毫秒數,比對之前存儲的數值,相同的話就是同一周,處理。不同的話就說明不是同一周,再覆蓋存儲周一的值,再處理。
思路2:計算出 現在距離1970年1月1日的總天數,因為1970年1月1 是周4 所以(總天數+7)/7 取整 就是周數 如果相同就是同一周反之就不是。
出處:https://blog.csdn.net/qq_38523017/java/article/details/88065110