jshint,eqnull,使用'==='与'未定义'

jshint, eqnull, Use '===' to compare with 'undefined'

本文关键字:未定义 使用 jshint eqnull      更新时间:2023-09-26

我提前道歉,我显然完全无法理解如何配置jshint。

我有这行代码

if ( data == undefined || (typeof data === 'object' && data.length === 0) ) {
...

jshint在第一个==下面划线,并表示

使用"==="与"undefined"进行比较。

我添加了/* jshint eqnull:true */。我想这就是选项的作用。我甚至在这里看到了一个例子(搜索eqnull)。

我错过了什么?

对同一使用此选项

"-W041":错误

在Javascript中,undefinednull是两个不同的值。直接将其他值与undefined进行比较是有问题的,因为null == undefinedtypeof null != typeof undefined

从上面的评论中,您似乎明确希望检查nullundefined的值,在这种情况下,您可以编写(data === undefined || data === null)

如果你想保持一个较短的表达式,你可以只写data == null,它在功能上是相同的。如上所述,您需要提供/* jshint eqnull:true */选项。