34 lines
1.0 KiB
JavaScript
34 lines
1.0 KiB
JavaScript
/** 地磅页日期工具(避免引入 dayjs) */
|
|
export function formatYmd(d = new Date()) {
|
|
const x = d instanceof Date ? d : new Date(d)
|
|
if (Number.isNaN(x.getTime())) return ''
|
|
const y = x.getFullYear()
|
|
const m = String(x.getMonth() + 1).padStart(2, '0')
|
|
const day = String(x.getDate()).padStart(2, '0')
|
|
return `${y}-${m}-${day}`
|
|
}
|
|
|
|
export function addDays(base, n) {
|
|
const d = new Date(base)
|
|
d.setDate(d.getDate() + n)
|
|
return d
|
|
}
|
|
|
|
/** 本周周一~周日 YYYY-MM-DD */
|
|
export function weekRange(base = new Date()) {
|
|
const today = new Date(base)
|
|
const day = today.getDay() || 7
|
|
const monday = addDays(today, 1 - day)
|
|
const sunday = addDays(monday, 6)
|
|
return { from: formatYmd(monday), to: formatYmd(sunday) }
|
|
}
|
|
|
|
export function nowYmdHms() {
|
|
const d = new Date()
|
|
const ymd = formatYmd(d)
|
|
const hh = String(d.getHours()).padStart(2, '0')
|
|
const mm = String(d.getMinutes()).padStart(2, '0')
|
|
const ss = String(d.getSeconds()).padStart(2, '0')
|
|
return `${ymd} ${hh}:${mm}:${ss}`
|
|
}
|