📜  日期漂亮打印 javascript (1)

📅  最后修改于: 2023-12-03 15:40:09.270000             🧑  作者: Mango

日期漂亮打印 JavaScript

在 Web 开发中,很常见的一个需求就是将日期格式化为用户易读的形式。例如,将日期显示为 “2022 年 3 月 25 日”,或 “3/25/2022”。本文将介绍几种实现方式,帮助程序员在 JavaScript 中漂亮地打印日期。

1. 使用 Intl 对象

Intl 是 ES6 引入的国际化 API,其中包含了 Intl.DateTimeFormat 函数,可以用于日期格式化。代码示例如下:

const date = new Date();
const formatter = new Intl.DateTimeFormat('zh-CN', {dateStyle: 'full'});
console.log(formatter.format(date)); // 显示 “2022年3月25日星期五”

上述代码使用 DateTimeFormat 函数创建了一个格式化器 formatter,然后使用 format 方法将日期格式化为中文的完整清晰日期格式。

另外, Intl 对象还支持设置其他语言,日期样式等等,开发者可以根据项目需求更灵活地进行配置。

2. 使用 Moment.js

Moment.js 是一个十分受欢迎的 JavaScript 日期处理库。它提供了强大的日期格式化、日期间隔、日期操作等功能,能简化很多开发工作。代码示例如下:

const date = new Date();
const formattedDate = moment(date).format('YYYY年M月D日');
console.log(formattedDate); // 显示 “2022年3月25日”

上述代码使用了 format 函数将日期格式化为指定的字符串格式。Moment.js 支持的日期格式化符号非常多,每个符号都对应一个特定的日期元素。

除了格式化日期,Moment.js 还可以操作日期,比如加减天数、周数、月数等等。在需要对日期进行较复杂操作时,Moment.js 是一个不错的选择。

3. 使用日期库 dayjs

dayjs 是一个轻量级 JavaScript 日期库,它具有和 Moment.js 类似的 API,但却更小且性能更好。代码示例如下:

const date = new Date();
const formattedDate = dayjs(date).format('YYYY年M月D日');
console.log(formattedDate); // 显示 “2022年3月25日”

上述代码使用了 format 函数将日期格式化为指定的字符串格式。dayjs 支持的日期格式化符号也较多,比 Moment.js 略有减少。

dayjs 与 Moment.js 不同的是,dayjs 支持按需加载,也就是说仅引入需要的模块,而不会引入整个库。这对于优化前端性能非常有帮助。

結論

上述介绍了三种在 JavaScript 中漂亮地打印日期的方式。在选择一种方式时,应该综合考虑库的体积、支持的日期格式等因素。无论哪种方式,都可以让页面中的日期显示更直观、简洁、易懂。

參考來源:https://www.cnblogs.com/dukuanzhe/p/8766621.html