当前位置: 首页 > article >正文

dayjs的isSameOrAfter、isSameOrBefore、isAfter、isBefore学习

定义

方法含义是否包含相等是否支持精度参数
isAfter()当前日期是否在目标日期之后
isBefore()当前日期是否在目标日期之前
isSameOrAfter()当前日期是否等于或在目标之后
isSameOrBefore()当前日期是否等于或在目标之前

用法

const dayjs = require('dayjs');

// 创建三个日期实例
const date1 = dayjs('2023-10-05');
const date2 = dayjs('2023-10-05'); // 与 date1 相同
const date3 = dayjs('2023-10-06'); // 比 date1 晚一天

// 基础比较
console.log(date1.isSameOrAfter(date2));  // true(完全相同)
console.log(date1.isAfter(date2));        // false(不包含相等)
console.log(date3.isAfter(date1));        // true(严格之后)
console.log(date1.isSameOrBefore(date3)); // true(更早)

精度参数比较

精度参数允许按特定单位(如 yearmonthdayhour 等)进行比较。

const date4 = dayjs('2023-10-05 10:00');
const date5 = dayjs('2023-10-05 12:00');

// 按天比较(忽略时间)
console.log(date4.isSameOrBefore(date5, 'day')); // true(同一天)
console.log(date4.isBefore(date5, 'hour'));      // true(10 < 12)

// 按月份比较
const date6 = dayjs('2023-10-01');
const date7 = dayjs('2023-10-31');
console.log(date6.isSameOrBefore(date7, 'month')); // true(同为10月)
console.log(date6.isBefore(date7, 'day'));         // true(日期更早)

边界情况

const date8 = dayjs('2022-10-05');
const date9 = dayjs('2023-10-05');

console.log(date8.isSameOrAfter(date9, 'month')); // false(年份不同)
console.log(date8.isSameOrAfter(date9, 'year'));  // false(2022 < 2023)
console.log(date8.isBefore(date9, 'day'));        // true(日期相同但年份更早)


http://www.kler.cn/a/546784.html

相关文章:

  • 微软AutoGen高级功能——Selector Group Chat
  • 【webview Android】视频获取首帧为封面
  • 服务器防护(ubuntu)
  • 辛格迪客户案例 | 钥准医药科技GMP文件管理(DMS)项目
  • oracle 19c安装DBRU补丁时报错CheckSystemSpace的处理
  • 百度 AI开源!将在6月30日开源文心大模型4.5系列
  • 上下文编辑器在不同场景下的功能(含使用案例)
  • Spring Boot 常用依赖详解:如何选择和使用常用依赖
  • django上传文件
  • grep如何排除多个目录?
  • C#搜索算法大冒险:在数据海洋里找宝藏
  • 【AI实践】deepseek支持升级git
  • Java发展史
  • 利用Firewalld和Iptables实现IP端口限制与开放
  • 牛客面筋学习
  • Flutter 双屏双引擎通信插件加入 GitCode:解锁双屏开发新潜能
  • Idea 插件 Quickly-Code-Toolkit
  • Oracle 19C Database Data Guard 一主两备 -- 生产级
  • springboot023学生宿舍管理系统
  • DNS污染、劫持频发?HTTPDNS让安全无死角