6個強大的JavaScript日期操作插件
我們必須承認,JavaScript內建的Date方法實在是太基礎了,遠不夠我們來處理日期。總有人會開發自己的JavaScript日期操作庫,為何在能夠使用已經開發并測試好的日期插件時還要再自己造個輪子呢。我已經碰到過很多次需要操作日期格式的情形,這些插件將節約大把的時間。
以下插件都擁有許多例如以不同格式顯示日期、顯示相對時間(如:20分鐘前)等特性,他們其中適合于處理兩天之間的倒計時。
以下列出6種插件:
1、Datejs
Datejs 是一個開源的JavaScript庫,用來解析、格式化和處理日期數據,支持多種語言的日期格式處理。
// What date is next thrusday? Date.today().next().thursday();// Add 3 days to Today Date.today().add(3).days();
// Is today Friday? Date.today().is().friday();
// Number fun (3).days().ago();
// 6 months from now var n = 6; n.months().fromNow();
// Set to 8:30 AM on the 15th day of the month Date.today().set({ day: 15, hour: 8, minute: 30 });
// Convert text into Date Date.parse('today'); Date.parse('t + 5 d'); // today + 5 days Date.parse('next thursday'); Date.parse('February 20th 1973'); Date.parse('Thu, 1 July 2004 22:30:00');</pre>
Prettydate 是一個 jQuery 用來顯示一些用戶友好的日期格式的插件,例如 Posted 2 days ago by John Resig
prettyDate("2008-01-28T20:24:17Z") // => "2 hours ago" prettyDate("2008-01-27T22:24:17Z") // => "Yesterday" prettyDate("2008-01-26T22:24:17Z") // => "2 days ago"prettyDate("2008-01-14T22:24:17Z") // => "2 weeks ago" prettyDate("2007-12-15T22:24:17Z") // => undefined </pre>
Moment.js 是一個簡單易用的輕量級JavaScript日期處理類庫,提供了日期格式化、日期解析等功能。它支持在瀏覽器和NodeJS兩種環境中運行。此類庫能夠 將給定的任意日期轉換成多種不同的格式,具有強大的日期計算功能,同時也內置了能顯示多樣的日期形式的函數。另外,它也支持多種語言,你可以任意新增一種 新的語言包。
//Return relative duration, eg 5 months ago var halloween = moment([2011, 9, 31]); console.log(halloween.fromNow());// Return current date plus 9 var now = moment().add('days', 9); console.log(now.format('dddd, MMMM Do YYYY'));</pre>
Countdown是jQuery的一個用于顯示倒計時的插件
5、XDate
XDate是一個對Javascirpt本地Date對象的輕度包裝,它提供對日期的解析、格式化以及其他操作的較強功能。它實現了本地Date對象的相同方法。
d = new XDate(2011, 7, 31); // August 31 d.setMonth(8); // September d.toString(); // October 1st!!! because there are only 30 says in September// let's try this with preventOverflow... d = new XDate(2011, 7, 31); // August 31 d.setMonth(8, true); // September d.toString(); // September 30!</pre>
DP_DateExtensions庫繼承了JavaScript的Date對象,并添加了一些新特性和功能。
-
添加了富特性的timeFormat()以及dateFormat()方法,允許你對時間和日期值進行微操
</li> -
通過add()和diff()方法輕松操作日期
</li> -
通過新的compare()方法簡化日期的比較
</li> - 添加轉換幾個W3C草稿中描述的ISO 8601標準日期格式。 </ul> 原文地址:http://www.queness.com/post/10967/6-robust-date-manipulation-javascript-plugins