Nodejs日期处理模块dayjs的使用
Nodejs日期处理模块dayjs的使用
Day.js 是一个轻量级的 JavaScript 日期库,与 Moment.js 兼容,但体积更小(只有 2KB),并且具有更高的性能。它可以在 Node.js 环境中使用来简化日期操作。
安装
首先,你需要安装 day.js:
npm install dayjs
基本用法
创建日期对象
你可以通过以下方式创建一个 dayjs
对象:
const dayjs = require('dayjs');
// 使用当前日期和时间
let now = dayjs();
console.log(now.format()); // 输出当前日期和时间,格式为 YYYY-MM-DDTHH:mm:ssZ
// 使用特定日期和时间
let specificDate = dayjs('2023-01-01');
console.log(specificDate.format()); // 输出 2023-01-01T00:00:00+08:00
格式化日期
你可以使用 .format()
方法来自定义日期输出格式:
let date = dayjs().format('YYYY/MM/DD'); // 输出类似 2023/09/26
console.log(date);
添加或减去时间
你可以使用 .add()
和 .subtract()
方法来修改日期:
let tomorrow = dayjs().add(1, 'day');
console.log(tomorrow.format()); // 输出明天的日期和时间
let yesterday = dayjs().subtract(1, 'day');
console.log(yesterday.format()); // 输出昨天的日期和时间
获取日期部分
你可以获取日期的不同部分,如年、月、日等:
let date = dayjs();
console.log(date.year()); // 输出年份
console.log(date.month() + 1); // 输出月份,注意 month 是从 0 开始计数的
console.log(date.date()); // 输出日期
比较日期
你可以比较两个日期:
let date1 = dayjs('2023-01-01');
let date2 = dayjs('2023-01-02');
if (date1 < date2) {
console.log('date1 is earlier than date2');
} else {
console.log('date2 is earlier than or equal to date1');
}
时区处理
Day.js 支持时区处理,可以通过插件实现:
npm install dayjs plugin/global plugin/timezone
使用时区:
const dayjs = require('dayjs');
const utc = require('dayjs/plugin/utc');
const timezone = require('dayjs/plugin/timezone');
dayjs.extend(utc);
dayjs.extend(timezone);
console.log(dayjs().tz("America/New_York").format());
以上就是 Day.js 的一些基本用法。更多高级功能和插件可以参考官方文档:https://day.js.org/docs/en/installation/node-js
Day.js 是一个轻量级的 JavaScript 日期库,用于解析、验证、操作和显示日期。它类似于 Moment.js,但是体积更小(只有2KB),且使用方式更加简洁。
安装
首先,你需要安装 Day.js。你可以通过 npm 或 yarn 来安装:
npm install dayjs
# 或者
yarn add dayjs
基本使用
1. 导入 Day.js
const dayjs = require('dayjs'); // Node.js 环境
// 或者
import dayjs from 'dayjs'; // ES 模块语法
2. 创建日期对象
const now = dayjs(); // 当前日期和时间
console.log(now.format()); // 输出类似 "2023-04-05T14:48:00+08:00"
3. 格式化日期
const formattedDate = dayjs().format('YYYY-MM-DD');
console.log(formattedDate); // 输出类似 "2023-04-05"
4. 添加或减去时间
const nextYear = dayjs().add(1, 'year').format('YYYY-MM-DD');
console.log(nextYear); // 输出类似 "2024-04-05"
const yesterday = dayjs().subtract(1, 'day').format('YYYY-MM-DD');
console.log(yesterday); // 输出类似 "2023-04-04"
5. 计算两个日期之间的差异
const date1 = dayjs('2023-04-01');
const date2 = dayjs('2023-04-05');
const diffInDays = date2.diff(date1, 'day');
console.log(diffInDays); // 输出 4
6. 解析字符串为日期
const dateFromString = dayjs('2023-04-05').format();
console.log(dateFromString); // 输出类似 "2023-04-05T00:00:00+08:00"
7. 本地化支持
Day.js 支持多种语言,可以通过插件来扩展:
require('dayjs/locale/zh-cn'); // 引入中文
dayjs.locale('zh-cn'); // 设置为中文
console.log(dayjs().format('LL')); // 输出类似 "2023年4月5日"
插件
Day.js 还有很多有用的插件,比如 dayjs/plugin/relativeTime
可以将日期转换为相对时间:
require('dayjs/plugin/relativeTime');
dayjs.extend(relativeTime);
console.log(dayjs().from(dayjs('2022-01-01'))); // 输出类似 "2年前"
以上就是 Day.js 的一些基本用法。更多详细信息可以参考其官方文档:https://day.js.org/
Day.js 是一个轻量级的 JavaScript 日期库,类似于 Moment.js,但更小更快。以下是 Day.js 的基本使用方法:
- 安装:
npm install dayjs
- 引入:
const dayjs = require('dayjs');
- 格式化日期:
dayjs().format('YYYY-MM-DD')
- 添加/减少时间:
dayjs().add(1, 'day').subtract(7, 'year')
- 获取日期信息:
dayjs().year()
、dayjs().month()
、dayjs().date()
- 比较日期:
dayjs('2020-01-01').isBefore(dayjs('2020-01-02'))
更多功能可以查阅官方文档。