哪种验证方法更好?

时间:2013-07-22 22:15:56

标签: javascript

使用此方法验证用户输入是否更好

if (obj == null) {
   // detects null and undefined
   // exit the function, input not validated
}

或此方法

if (!obj) {
    // detects false, 0, -0, '', null, undefined, NaN
    // exit the function, input not validated
}

在这种特殊情况下,obj表示要循环的数组。

我很难决定使用哪种方法。

2 个答案:

答案 0 :(得分:1)

你已经描述了这些差异。这取决于您 - 您希望false''是否通过您的条件?

对于数组,您可能需要考虑:

if (obj && obj.length) {
    // Your array is not null, and has items.
}

答案 1 :(得分:1)

老实说,因为无论如何都要解释javascript,与实际评估它相比,操作的开销很大,所以没关系。你总是可以通过循环测试一百万次来测试,并且计时更快。