Is.js 为检查数据提供简单的方法

  • David Iffland
  • 曹知渊

2015 年 2 月 15 日

话题:JavaScript语言 & 开发

在那些庞大的无所不能的 JavaScript 框架包围下,小型的库is.js却能受到开发人员的青睐。在一个精简而方便的包中,它能提供超过 100 种的数据检查方法。

“我每天都要用到这些数据检查方法,所以我写了这个库,”is.js 的作者 Aras Atasaygin 说道。要使用这个库,只要把 is.min.js 加入到项目中,然后就开始提问吧:

is.capitalized("Yes it is");

到目前为止,这个库已经支持了大量的数据检查,从类型检查如 is.function() 到日期检查如 is.inNextYear()。目前已经提供超过 100 种不同的类型、是否存在、正则表达式、字符串、算术以及环境变量检查,更多的还在开发中。其中一些检查要比另外一些更可靠。举个例子,众所周知判断 email 地址的正则表达式是很难做到万无一失的,而判断浏览器使用者是否处在夏令时的时区则比较简单。

除了这些简单的检查,is.js 还支持检查条件的逻辑组合,像allany,它们需要有多个参数,分别检查是否所有参数都满足条件,或者任一参数满足条件。开发者还可以使用not来反转检查结果。

所支持的检查都不是很复杂,并且很有可能很多开发者自己也写过类似库来满足自己特殊的需求,但使用 is.js 可以节省开发者的时间。is.js 还有一个特色就是支持一系列正则表达式检查,很多常用的默认都包括在内。比如,检查一个字符串是否是一个网址:

is.url("http://www.infoq.com");

在代码中,很多检查是基于正则表达式(静态字符串)的,所以很难保持最小体积。随着新的检查的加入,这个库将面临着越来越臃肿的问题。Atasaygin 说他一直在听取贡献者的建议,如果大家需要,将来可能会加入模块化的功能。

“现在我在加入贡献者们提交给我的新的检查,并听取社区对下一步发展的建议,”Atasaygin 说。这个项目托管在GitHub上。

查看英文原文:Is.js Offers Simple Way to Check Data

JavaScript语言 & 开发