【js】dayjs的用法

导入dayjs库

import dayjs from 'dayjs';

创建一个dayjs对象

const today = dayjs()		// 今天
console.log(today, 'today')		// "2023-08-28T05:19:09.296Z"

const date = dayjs('2023-08-28')		// 特定日期
console.log(date, 'date')		// "2023-08-27T16:00:00.000Z"

操作日期

console.log(today.add(1, 'day'))		// 当前日期加一天
console.log(today.add(1, 'month'))		// 当前日期加一个月
console.log(today.add(1, 'year'))		// 当前日期加一年

console.log(today.subtract(1, 'day'))	// 当前日期减一天
console.log(today.subtract(1, 'month'))	// 当前日期减一月
console.log(today.subtract(1, 'year'))	// 当前日期减一年

比较日期

const isAfter = today.isAfter('2023-09-01')		// 检查当前日期是否在2023-09-01之后
console.log(isAfter)		// false

console.log(today.isSame(date, 'day'))		// 检查当前日期是否和某个日期date在同一天
console.log(today.isSame(date, 'month'))	// 检查当前日期是否和某个日期date在同一月
console.log(today.isSame(date, 'year'))	// 检查当前日期是否和某个日期date在同一年

格式化日期

console.log(today.format('YYYY-MM-DD'))		// 2023-08-28
console.log(date.format('YYYY/MM/DD'))		// 2023/08/28

dayjs获取今年第一天

console.log(dayjs().format('YYYY') + '-01-01')
// dayjs().format('YYYY') 拿到的是今年,2023,后面拼接'-01-01'就等于2023-01-01

console.log(dayjs().startOf('year').format('YYYY-MM-DD'))
// 今年第一天 2023-01-01

dayjs获取去年最后一天

console.log(dayjs().substract(1, 'year').format('YYYY'))
// 这是拿到去年, 2022

//去年的最后一天dayjs().substract(1, 'year').endOf('year'),再用format转下日期格式
console.log(dayjs().substract(1, 'year').endOf('year').format('YYYY-MM-DD'))
### 如何使用 Day.js 进行日期和时间操作 Day.js 是一种轻量级的 JavaScript 库,用于处理日期和时间[^2]。它提供了类似于 Moment.js 的 API 接口,但具有更小的体积和支持按需加载的功能模块。 以下是关于如何使用 Day.js 的具体说明: #### 安装 Day.js 可以通过 `npm` 命令来安装 Day.js。如果遇到网络问题导致安装速度较慢,可以考虑使用其他工具如 `cnpm` 或者 `yarn` 来替代[^3]。 ```bash npm install dayjs ``` #### 引入并初始化 Day.js 在项目中引入 Day.js 后,可以直接通过其函数接口获取当前的时间对象或者指定某个特定时间的对象。 ```javascript import dayjs from 'dayjs'; // 获取当前时间实例 const currentTime = dayjs(); console.log(currentTime); // 输出类似:dayjs(Date Object) ``` #### 格式化日期 利用 `.format()` 方法能够按照自定义格式输出字符串形式的日期数据。 ```javascript // 当前时间格式化为标准样式 console.log(currentTime.format('YYYY-MM-DD HH:mm:ss')); // 例如:"2023-10-07 14:58:06" ``` #### 修改日期 支持多种单位上的加减运算,比如天数、小时等。 ```javascript // 计算明天的具体时刻 const nextDay = currentTime.add(1, 'day'); console.log(nextDay.format('YYYY-MM-DD')); // 减去两小时后的结果 const twoHoursAgo = currentTime.subtract(2, 'hour'); console.log(twoHoursAgo.format('HH:mm')); ``` #### 对比两个日期 比较不同时间段之间的关系也很方便实现。 ```javascript const anotherDate = dayjs('2023-09-01'); if (currentTime.isAfter(anotherDate)) { console.log("现在的日期晚于给定日期"); } else if (currentTime.isBefore(anotherDate)) { console.log("现在的日期早于给定日期"); } ``` 以上就是一些基础的操作指南以及实际应用中的例子展示。对于更加复杂的场景需求,则可能还需要额外扩展插件等功能组件的支持[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值