Skip to content

getExtremumDate ​

获取日期数组极值日期(最小/最大)

引入版本 ​

0.115.1

Demo ​

ts
import { getExtremumDate } from '@wyfex/iutils'

/**
 * 场景1:只传年月日字符串,不传format,返回原始字符串
 */
const list1 = ['2026-08-22', '2026-08-20', '2026-08-21']
// 获取最小日期
console.log(getExtremumDate(list1)) // '2026-08-20'
// 获取最大日期
console.log(getExtremumDate(list1, { type: 'max' })) // '2026-08-22'

console.log('==================')

/**
 * 场景2:带时分秒,不传format,返回原始字符串
 */
const list2 = ['2026-08-20 08:30:00', '2026-08-22 10:00:00']
// 获取最小日期
console.log(getExtremumDate(list2)) // '2026-08-20 08:30:00'
// 获取最大日期+手动指定format
console.log(getExtremumDate(list2, { type: 'max', format: 'YYYY-MM-DD' })) // '2026-08-22'

console.log('==================')

/**
 * 场景3:混合Date对象
 */
const list3 = [new Date('2026-08-19'), '2026-08-20 12:00:00']
// 获取最小日期
console.log(getExtremumDate(list3)) // 输入不是字符串,兜底输出 '2026-08-19 00:00:00'
// 获取最大日期
console.log(getExtremumDate(list3, { type: 'max' })) // '2026-08-20 12:00:00'

console.log('==================')

/**
 * 场景4:Date对象数组
 */
const list4 = [
  new Date(2018, 8, 21),
  new Date(2019, 8, 21),
  new Date(2020, 8, 21)
]
// 获取最小日期
console.log(getExtremumDate(list4)) // 2018-09-21 00:00:00
// 获取最大日期+手动指定format
console.log(getExtremumDate(list4, { type: 'max', format: 'YYYY-MM-DD' })) // 2020-09-21

基于 MIT 许可发布