我们必须承认,JavaScript内建的Date方法实在是太基础了,远不够我们来处理日期。总有人会开发自己的JavaScript日期操作库,为何在能够使用已经开发并测试好的日期插件时还要再自己造个轮子呢。我已经碰到过很多次需要操作日期格式的情形,这些插件将节约大把的时间。
以下插件都拥有许多例如以不同格式显示日期、显示相对时间(如:20分钟前)等特性,他们其中适合于处理两天之间的倒计时。
以下列出6种插件:
1、
Datejs 是一个开源的JavaScript库,用来解析、格式化和处理日期数据,支持多种语言的日期格式处理。
01// What date is next thrusday?
02Date.today().next().thursday();
03
04// Add 3 days to Today
05Date.today().add(3).days();
06
07// Is today Friday?
08Date.today().is().friday();
09
10// Number fun
11(3).days().ago();
12
13// 6 months from now
14var n = 6;
15n.months().fromNow();
16
17// Set to 8:30 AM on the 15th day of the month
18Date.today().set({ day: 15, hour: 8, minute: 30 });
19
20// Convert text into Date
21Date.parse('today');
22Date.parse('t + 5 d'); // today + 5 days
23Date.parse('next thursday');
24Date.parse('February 20th 1973');
25Date.parse('Thu, 1 July 2004 22:30:00');
2、
Prettydate 是一个 jQuery 用来显示一些用户友好的日期格式的插件,例如 Posted 2 days ago by John Resig
1prettyDate("2008-01-28T20:24:17Z") // => "2 hours ago"
2prettyDate("2008-01-27T22:24:17Z") // => "Yesterday"
3prettyDate("2008-01-26T22:24:17Z") // => "2 days ago"
4prettyDate("2008-01-14T22:24:17Z") // => "2 weeks ago"
5prettyDate("2007-12-15T22:24:17Z") // => undefined
3、
Moment.js 是一个简单易用的轻量级JavaScript日期处理类库,提供了日期格式化、日期解析等功能。它支持在浏览器和NodeJS两种环境中运行。此类库能够 将给定的任意日期转换成多种不同的格式,具有强大的日期计算功能,同时也内置了能显示多样的日期形式的函数。另外,它也支持多种语言,你可以任意新增一种 新的语言包。
1//Return relative duration, eg 5 months ago
2var halloween = moment([2011, 9, 31]);
3console.log(halloween.fromNow());
4
5// Return current date plus 9
6var now = moment().add('days', 9);
7console.log(now.format('dddd, MMMM Do YYYY'));
4、
Countdown是jQuery的一个用于显示倒计时的插件
5、
XDate是一个对Javascirpt本地Date对象的轻度包装,它提供对日期的解析、格式化以及其他操作的较强功能。它实现了本地Date对象的相同方法。