哪种验证方法更好

Which validation method is better?

本文关键字:更好 方法 验证      更新时间:2023-09-26

使用这种方法验证用户输入更好吗

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表示要循环通过的数组。

我很难决定用哪种方法。

老实说,由于javascript无论如何都是被解释的,与实际评估相比,操作的开销是巨大的,所以这无关紧要。你总是可以通过在一个循环中做一百万次来进行测试,并且计时更快。

您已经描述了这些差异。所以这取决于你——你想让false还是''通过你的条件测试?

对于阵列,您可能需要考虑:

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