测试输入是否为空的最佳方法是什么?

时间:2011-04-25 19:45:19

标签: javascript webforms

我见过这样的话:

  • input.value == ''
  • input.value == null
  • input.value.length > 0

或这些和其他的组合。但是我认为有一种最佳方式,考虑到我们正在谈论一个字符串,对吗?

提前致谢。

5 个答案:

答案 0 :(得分:1)

我喜欢input.value.length > 0。除非对象没有NULL属性,否则value选项几乎不会触发。

答案 1 :(得分:1)

我个人总是喜欢用

进行测试
input.value.match(/\S/);

请注意,对于空值和仅包含空格的值,这将是真的。

在你提供的方法中,我将使用length属性,但对于空字符串,它应该是

input.value.length == 0

答案 2 :(得分:1)

要确定空值,您可以使用:if(getElementById('input').value)if($('.inputBox').val())

使用该条件语句,这两个都将评估为false:

<input type="text" id="inputBox" value="" />
<input type="text" id="inputBox" />

我喜欢这种方法,因为它很简单。

答案 3 :(得分:1)

我更喜欢明确并检查我真正想要的值。因此,如果我想检查一个空字符串,我更喜欢input.value === "",因为值总是一个字符串。

答案 4 :(得分:0)

很多可能取决于你在现场接受的内容。即使它可能以字符串形式出现,您仍然可以对其进行验证。

例如:如果是电子邮件地址,您可以执行正则表达式,看它是否遵循电子邮件的形式。

大多数领域也是如此。通过这种方式,您可以完全信任您收到的数据。不只是它不是空的。

对于空检查,我通常使用.length&gt; 0表示对象。