UNPKG

lsc-utils

Version:

一般常用的前端工具类

34 lines (33 loc) 922 B
/** * 计算两个时间差 x年x月x日 * @param startTime 开始时间 * @param endTime 结束时间 */ export function monthDayDiff (startTime, endTime) { const flag = [1, 3, 5, 7, 8, 10, 12, 4, 6, 9, 11, 2] const start = new Date(startTime) const end = new Date(endTime) let year = end.getFullYear() - start.getFullYear() let month = end.getMonth() - start.getMonth() let day = end.getDate() - start.getDate() if (month < 0) { year-- month = end.getMonth() + (12 - start.getMonth()) } if (day < 0) { month-- const index = flag.findIndex((temp) => { return temp === start.getMonth() + 1 }) let monthLength if (index <= 6) { monthLength = 31 } else if (index > 6 && index <= 10) { monthLength = 30 } else { monthLength = 28 } day = end.getDate() + (monthLength - start.getDate()) } return `${year}${month}${day}天` }