jQuery isBlank判断对象是否为空

One of my favorite syntactic sugar methods available in Rails is the Object.blank?, which evaluates to true if the given object is false, empty, or a whitespace string. It makes your conditional expressions more readable; avoiding the use of boolean operators.

在Rails中我最喜欢的语法糖方法之一就是Object.blank?,当给定的对象是false,空,或者空白字符串时,函数的返回值为真。它使你的条件表达式变得更加可读,避免了布尔运算符的使用。

注:语法糖(Syntactic sugar),也译为糖衣语法,是由英国计算机科学家彼得·約翰·蘭達(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序员使用。通常来说使用语法糖能够增加程序的可读性,从而减少程序代码出错的机会。

It would be cool if we can have the same convenience when writing client-side code with JavaScript. Unfortunately, jQuery Core doesn't have such a utility function. Closest you get is with the jQuery.isEmptyObject. It would return true for null, undefined or empty objects and empty arrays; but you can't match whitespace strings with it (which are of course not empty objects).

如果我们在使用JavaScript编写客户端代码时也可以享受同样的便利就太酷了。不幸的是,jQuery核心不支持这样的工具函数。你可以使用的,与之最接近的函数是jQuery.isEmptyObject。它对于null,undefined或者空对象,空数组返回true;但是你不能用它匹配任何空白的字符串(这些当然不是空对象)

So, I wrote this small jQuery plugin to check whether the given object is blank:

所以,我编写了这个jQuery小插件来检查给定的对象是否为空白:

(function($){
  $.isBlank = function(obj){
    return(!obj || $.trim(obj) === "");
  };
})(jQuery);

$.isBlank(" ") //true
$.isBlank("") //true
$.isBlank("\n") //true
$.isBlank("a") //false

$.isBlank(null) //true
$.isBlank(undefined) //true
$.isBlank(false) //true
$.isBlank([]) //true

As shown in the above examples, it would identify any object that evaluates to false (null, undefined, false, []) or a whitespace string as blank.

如上例所示,它对于任何值为false的对象(null,undefined,false,[])或者空白字符串判定为blank。

原文链接:jQuery isBlank()

本文链接:http://bookshadow.com/weblog/2014/11/15/jquery-isblank/
请尊重作者的劳动成果,转载请注明出处!书影博客保留对文章的所有权利。

如果您喜欢这篇博文,欢迎您捐赠书影博客: ,查看支付宝二维码

Pingbacks已关闭。

暂无评论

张贴您的评论