dateformat.js 轻量级 JS 日期处理库使用指南

作者:小括号

时间:2026-10-31

浏览:102

dateformat.js 是一款不足 5kb 的轻量级 JavaScript 日期处理工具库。本文详细介绍其引入方式及核心 API,包括日期格式化、字符串转日期、获取起止时间、日期比较、星期获取及日期增减等功能,帮助开发者快速集成并处理常见日期需求。

文章目录

介绍

dateformat.js

dateformat.js 是一款简洁且体积不足 5kb 的 JavaScript 工具库,专门用于处理时间相关操作。

  • 支持常用的时间格式化
  • 获取当前星期、对比时间大小以及判断是否为闰年
  • 支持增加日期、月份和年份等操作
  • 支持自动实时更新
  • 支持通过浏览器 script 标签引入
  • 测试用例完善,运行稳定

1 使用方法

1.1 引入 dateformat.js

通过 script 标签将库引入 HTML 文件,此时会生成一个全局变量 DateFormat。

<script src="dateformat.js"></script>

此外,你也可以通过 import 语句进行引入。

import dateformat form '...自己的路径';

该项目已发布至 npm,你可以通过以下命令安装:

//安装
npm install dateformat-util  
//使用
var dateformat = require('dateformat-util');
dateformat.format(new Date());

1.2 使用 dateformat 类

引入后直接调用相关方法即可使用。

DateFormat.format(new Date(), 'yyyy-MM-dd hh:mm:ss');

2 具体方法

2.1 format(date, fmt)

format 是一个用于格式化 Date 类型时间的工具方法:

DateFormat.format(new Date()) //不传 fmt,则默认为 yyyy-MM-dd hh:mm:ss ;
DateFormat.format(new Date(), 'yyyy-MM-dd hh:mm:ss');
DateFormat.format(new Date(), 'yyyy/MM/dd hh:mm:ss');
DateFormat.format(new Date(), 'yyyy/MM/dd');
...

2.2 formatToDate(dateStr)

formatToDate 用于将字符串类型的时间转换为 Date 类型:

DateFormat.formatToDate('2017-04-18 12:12:12');
DateFormat.formatToDate('2017/04/18 12:12:12');
...

2.3 getDateStart(date)

getDateStart 用于获取某一天的开始时间,这在需要获取特定日期起始点的场景中非常有用。

DateFormat.getDateStart(new Date());  //今天是4.18, 那返回的是今天 00:00:00的Date类型

若需返回字符串格式,可调用 getDateStartStr(date, fmt) 方法,其中 fmt 参数非必填。

DateFormat.getDateStartStr(new Date(), 'yyyy-MM-dd hh:mm:ss'); //返回 2017-04-18 00:00:00

2.4 getDateEnd(date)

getDateEnd 用于获取一天的结束时间。

DateFormat.getDateEnd(new Date());  //今天是4.18, 那返回的是今天 23:59:59的Date类型

若需返回字符串格式,可调用 getDateEndStr(date, fmt) 方法,其中 fmt 参数非必填。

DateFormat.getDateEndStr(new Date(), 'yyyy-MM-dd hh:mm:ss'); //返回 2017-04-18 23:59:59

2.5 compareDate(d1, d2)

compareDate 用于比较两个日期的大小:若 d1 > d2 返回 1,d1 == d2 返回 0,d1 < d2 返回 -1。

DateFormat.compareDate(new Date(), new Date()); 

2.6 getWeek(date, type)

getWeek 用于获取指定日期是星期几。

DateFormat.getWeek(new Date());  //type非必传,默认返回 '星期 X'的格式
DateFormat.getWeek(new Date(), DateFormat.WEEKTYPE.US_DAYNAME); // Monday


/*
type 枚举如下:

DateFormat.WEEKTYPE.ZH_DAYNAME :      星期一
DateFormat.WEEKTYPE.ZH_SHORTDAYNAME:  周一
DateFormat.WEEKTYPE.US_DAYNAME:      Monday
DateFormat.WEEKTYPE.US_SDAYNAME:     Mon
*/

2.7 addDay(date, num)

日期增加系列方法如下:

addDay(date, num) 
addDayStr(dateStr, num) 
addMonth(date, num)
addMonthStr(dateStr, num)
addYear(date, num)
addYearStr(dateStr, num)

使用方式十分简单,例如当前日期为 2017.04.18。

DateFormat.addDay(new Date(), 3);   //返回是三天后的  Date类型
DateFormat.addDayStr('2017-04-18 12:12:12', 3) // 返回 Fri Apr 21 2017 12:12:12 GMT+0800 (中国标准时间)

// 其他 month year的方式同上

至此,关于 dateformat.js 这款超轻量级 JS 日期处理库的使用介绍完毕,更多相关内容可参考本站其他文章。

实用工具推荐

电子包浆

绿化、压缩、噪点和虚拟水印,自由调节做旧程度。

使用 ›
图片压缩

选择画质和输出格式,预览压缩前后的大小。

使用 ›
相关文章