momentjs 两个时间比较大小

isSameisBeforeisAfter去比较

isBefore

检查某个moment是否在另外一个moment之前:

js 复制代码
moment('2025-07-04').isBefore('2025-06-03'); // true

➕粒度限制(year month week isoWeek day hour minute second):

js 复制代码
moment('2025-07-04').isBefore('2025-06-03', 'year'); // false
moment('2025-07-04').isBefore('2024-06-03', 'year'); // true

isSame

js 复制代码
moment('2025-07-04').isSame('2025-06-03'); // false
js 复制代码
moment('2025-07-04').isSame('2025-06-03', 'month'); // false, 月份不同
moment('2025-07-04').isSame('2025-06-03', 'year'); // true, 年份相同
moment('2025-07-04').isSame('2025-06-03', 'day'); // false, 天不同

isAfter

js 复制代码
moment('2025-07-04').isAfter('2025-06-03'); // true

也可以粒度去比价,跟上面类似,就不多写了。

总示例

js 复制代码
moment('2025-07-04').isSame(moment(), 'days')
moment('2025-07-04').isBefore(moment(), 'days')
moment('2025-07-04').isAfter(moment(), 'days')

不同格式:

js 复制代码
const format = 'MM/D/YYYY'

const moment1 = moment('07/04/25',format);
const moment2 = moment('07/04/25',format);

moment1.isSame(moment2,'day') // true
moment1.isSame(moment2,'date') // true

用diff去比较两个时间,得到正负 0是相等

js 复制代码
const format = "HH:mm:ss MM/D/YYYY"
const startTime = moment('14:43:00 07/04/25', format);
const endTime = moment('14:43:00 07/04/25', format);

const diff1 = moment(endTime).diff(moment(startTime), 'years')
const diff2 = moment(endTime).diff(moment(startTime), 'months')
const diff3 = moment(endTime).diff(moment(startTime), 'days')
const diff4 = moment(endTime).diff(moment(startTime), 'minutes')
const diff5 = moment(endTime).diff(moment(startTime), 'seconds')
js 复制代码
let days = moment('2025-07-04').diff(moment('2025-07-01'), 'days')
// 相隔天数会把最后一天 也就是 7月4号也算上
相关推荐
N***73851 小时前
Vue网络编程详解
前端·javascript·vue.js
e***71671 小时前
Spring Boot项目接收前端参数的11种方式
前端·spring boot·后端
程序猿小蒜1 小时前
基于springboot的的学生干部管理系统开发与设计
java·前端·spring boot·后端·spring
银空飞羽1 小时前
让Trae CN SOLO自主发挥,看看能做出一个什么样的项目
前端·人工智能·trae
Eshine、2 小时前
解决前端项目中,浏览器无法正常加载带.gz名称的文件
前端·vue3·.gz·.gz名称的js文件无法被加载
用户47949283569153 小时前
别再当 AI 的"人肉定位器"了:一个工具让 React 组件秒定位
前端·aigc·ai编程
WYiQIU4 小时前
面了一次字节前端岗,我才知道何为“造火箭”的极致!
前端·javascript·vue.js·react.js·面试
qq_316837754 小时前
uniapp 观察列表每个元素的曝光时间
前端·javascript·uni-app
小夏同学呀4 小时前
在 Vue 2 中实现 “点击下载条码 → 打开新窗口预览 → 自动唤起浏览器打印” 的功能
前端·javascript·vue.js
芳草萋萋鹦鹉洲哦4 小时前
【vue】导航栏变动后刷新router的几种方法
前端·javascript·vue.js