在 JavaScript中处理日期是一件非常让人头疼的事情。原生的日期方法往往是冗长且不一致的,这给开发人员带来很大的困惑。但现在,好消息来了。现在已经有不少库,能让处理日期变得不再那么痛苦。这些库之于 JavaScript 原生的日期方法,就好比 jQuery 之于原生 DOM API。
举个例子。这是一个对 Stack Overflow 上的一个问题—— how to get last day of the month的解答:
var t = new Date();alert( new Date(t.getFullYear(), t.getMonth() + 1, 0, 23, 59, 59) );
当然,这是有效的,但是并不是很明显,getMonth代表什么数字。现在相比之下,相当可读:
const today = new Date();console.log( lastDayOfMonth(today) );
lastDayOfMonth方法是由 date-fns提供的,它是一种自动声明的综合工具集,用于在浏览器和Node.js中操纵JavaScript日期。
在本文中,我将向您展示如何使用date-fns来启动和运行。阅读后,您可以将其放入项目中,并利用其许多帮助方法轻松操纵日期。这将使代码像t.getMonth()1,0,23,59,59一样是过去的事情。日期FNS
我们拿 date-fns 来进行一个对比 (来自项目主页):
date-fns 是不可变的,总是返回新的日期,而不是修改传入的那个。
它的 API 很简单。你做每件事都只需要一个函数。
它很快。你的用户会有更好的用户体验。
它是 Webpack 完美的伴侣。由于其每个文件一个函数的风格,你可以在打包时选择需要的部分而扔弃没用到的那些功能。
对于我来说,最为闪亮的特性是其易用性。在基于 Web 的项目中使用它,你可以从 CDN 获得 date-fns,将其添加到页面。接下来会有更多相关内容……
安装
安装这个库的方法有许多种。
你可以通过 npm 安装:
npm install date-fns --save