6个强大的JavaScript日期操作插件(翻译)

简介: 我们必须承认,JavaScript内建的Date方法实在是太基础了,远不够我们来处理日期。总有人会开发自己的JavaScript日期操作库,为何在能够使用已经开发并测试好的日期插件时还要再自己造个轮子呢。

我们必须承认,JavaScript内建的Date方法实在是太基础了,远不够我们来处理日期。总有人会开发自己的JavaScript日期操作库,为何在能够使用已经开发并测试好的日期插件时还要再自己造个轮子呢。我已经碰到过很多次需要操作日期格式的情形,这些插件将节约大把的时间。

以下插件都拥有许多例如以不同格式显示日期、显示相对时间(如:20分钟前)等特性,他们其中适合于处理两天之间的倒计时。

以下列出6种插件:

1、Datejs

Datejs 是一个开源的JavaScript库,用来解析、格式化和处理日期数据,支持多种语言的日期格式处理。

Datejs

01 // What date is next thrusday?
02 Date.today().next().thursday();
03    
04 // Add 3 days to Today
05 Date.today().add(3).days();
06    
07 // Is today Friday?
08 Date.today().is().friday();
09    
10 // Number fun
11 (3).days().ago();
12    
13 // 6 months from now
14 var n = 6;
15 n.months().fromNow();
16    
17 // Set to 8:30 AM on the 15th day of the month
18 Date.today().set({ day: 15, hour: 8, minute: 30 });
19    
20 // Convert text into Date
21 Date.parse('today');
22 Date.parse('t + 5 d'); // today + 5 days
23 Date.parse('next thursday');
24 Date.parse('February 20th 1973');
25 Date.parse('Thu, 1 July 2004 22:30:00');

2、Pretty Date

Prettydate 是一个 jQuery 用来显示一些用户友好的日期格式的插件,例如 Posted 2 days ago byJohn Resig

1 prettyDate("2008-01-28T20:24:17Z"// => "2 hours ago"
2 prettyDate("2008-01-27T22:24:17Z"// => "Yesterday"
3 prettyDate("2008-01-26T22:24:17Z"// => "2 days ago"
4 prettyDate("2008-01-14T22:24:17Z"// => "2 weeks ago"
5 prettyDate("2007-12-15T22:24:17Z"// => undefined

3、Moment JS

Moment.js 是一个简单易用的轻量级JavaScript日期处理类库,提供了日期格式化、日期解析等功能。它支持在浏览器和NodeJS两种环境中运行。此类库能够 将给定的任意日期转换成多种不同的格式,具有强大的日期计算功能,同时也内置了能显示多样的日期形式的函数。另外,它也支持多种语言,你可以任意新增一种 新的语言包。

1 //Return relative duration, eg 5 months ago
2 var halloween = moment([2011, 9, 31]);
3 console.log(halloween.fromNow());
4   
5 // Return current date plus 9
6 var now = moment().add('days', 9);
7 console.log(now.format('dddd, MMMM Do YYYY'));

Moment JS

4、Countdown JS

Countdown是jQuery的一个用于显示倒计时的插件Countdown JS

5、XDate

XDate是一个对Javascirpt本地Date对象的轻度包装,它提供对日期的解析、格式化以及其他操作的较强功能。它实现了本地Date对象的相同方法。

XDate

1 d = new XDate(2011, 7, 31); // August 31
2 d.setMonth(8); // September
3 d.toString(); // October 1st!!! because there are only 30 says in September
4   
5 // let's try this with preventOverflow...
6 d = new XDate(2011, 7, 31); // August 31
7 d.setMonth(8, true); // September
8 d.toString(); // September 30!

6、DP Date Extension

DP_DateExtensions库继承了JavaScript的Date对象,并添加了一些新特性和功能。

  • 添加了富特性的timeFormat()以及dateFormat()方法,允许你对时间和日期值进行微操

  • 通过add()和diff()方法轻松操作日期

  • 通过新的compare()方法简化日期的比较

  • 添加转换几个W3C草稿中描述的ISO 8601标准日期格式

英文地址,OSCHINA 原创翻译

目录
相关文章
|
1月前
|
JavaScript 前端开发
JavaScript Date(日期) 对象
JavaScript Date(日期) 对象
41 2
|
2月前
|
JavaScript 前端开发
js时间戳转日期时间
js时间戳转日期时间
84 20
|
20天前
|
JavaScript 前端开发 搜索推荐
Moment.js、Day.js、Miment,日期时间库怎么选?
【10月更文挑战第29天】如果你需要一个功能强大、插件丰富的日期时间库,并且对性能要求不是特别苛刻,Moment.js是一个不错的选择;如果你追求极致的轻量级和高性能,那么Day.js可能更适合你;而如果你有一些特定的日期时间处理需求,并且希望在性能和功能之间取得平衡,Miment也是可以考虑的。
|
27天前
|
JavaScript 前端开发
javascript开发的简单的弹幕插件
这是一个原生javascript开发的简单的弹幕插件,具有美观、易用,占用的资源较低等特点,可以给弹幕设置内容、颜色、头像、链接地址等属性,鼠标悬停等,简单实用,欢迎下载!
40 5
|
27天前
|
JavaScript 定位技术
jQuery鹰眼视图小地图定位预览插件minimap.js
这是一个jQuery小地图定位预览视图,默认左侧是页面主要内容,minimap.js的好处就是在它的右侧形成一个快速定位通道,产生一个缩小版的页面,即预览效果,可以点击并快速定位到页面的某个位置。简单实用,欢迎下载!
30 0
|
1月前
|
存储 JSON JavaScript
Vue.js开发中基于localStorage与sessionStorage的本地存储利器:Vue-ls插件使用详解
Vue.js开发中基于localStorage与sessionStorage的本地存储利器:Vue-ls插件使用详解
58 0
|
2月前
|
JavaScript 前端开发
|
3月前
|
编解码 JavaScript 前端开发
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决
116 1
|
3月前
|
JavaScript 前端开发 测试技术
[译] 用 Vue.js 3 Composition API 创建 i18n 插件
[译] 用 Vue.js 3 Composition API 创建 i18n 插件
|
4月前
|
JavaScript 前端开发 API
Chrome插件实现问题之 content_script.js能做什么
Chrome插件实现问题之 content_script.js能做什么