用jquery测试空字符串的最佳方法是什么?

什么是最好的方式来测试一个空字符串与jQuery的开箱即用,即没有插件? 我试过这个。

但它至少不是现成的。 这将是很好的使用内置的东西。

我不想重复

if (a == null || a=='')

到处都有if if (isempty(a))可用。


if (!a) {
  // is emtpy
}

忽略字符串的空格:

if (!a.trim()) {
    // is empty or whitespace
}

如果您需要Legacy支持(IE8-) trim() ,请使用$.trim$.trim


你给的链接似乎在尝试与你试图避免重复的测试有所不同。

if (a == null || a=='')

测试字符串是否为空字符串或null。 您链接到的文章测试字符串是否完全由空格组成(或为空)。

您所描述的测试可以替换为:

if (!a)

因为在javascript中,一个空字符串和null都在布尔上下文中计算为false。


基于大卫的回答,我个人喜欢首先检查给定的对象,如果它是一个字符串的话。 否则,在不存在的对象上调用.trim()会引发异常:

function isEmpty(value) {
  return typeof value == 'string' && !value.trim() || typeof value == 'undefined' || value === null;
}

用法:

isEmpty(undefined); // true
isEmpty(null); // true
isEmpty(''); // true
isEmpty('foo'); // false
isEmpty(1); // false
isEmpty(0); // false
链接地址: http://www.djcxy.com/p/27525.html

上一篇: What is the best way to test for an empty string with jquery

下一篇: If input has spaces only