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号也算上
相关推荐
孤水寒月15 分钟前
基于HTML的悬窗可拖动记事本
前端·css·html
祝余呀24 分钟前
html初学者第一天
前端·html
耶啵奶膘3 小时前
uniapp+firstUI——上传视频组件fui-upload-video
前端·javascript·uni-app
视频砖家3 小时前
移动端Html5播放器按钮变小的问题解决方法
前端·javascript·viewport功能
lyj1689974 小时前
vue-i18n+vscode+vue 多语言使用
前端·vue.js·vscode
小白变怪兽5 小时前
一、react18+项目初始化(vite)
前端·react.js
ai小鬼头5 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github
墨菲安全6 小时前
NPM组件 betsson 等窃取主机敏感信息
前端·npm·node.js·软件供应链安全·主机信息窃取·npm组件投毒
GISer_Jing6 小时前
Monorepo+Pnpm+Turborepo
前端·javascript·ecmascript
天涯学馆6 小时前
前端开发也能用 WebAssembly?这些场景超实用!
前端·javascript·面试