Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jshint,eqnull,使用'===';与';未定义';_Javascript_Jshint - Fatal编程技术网

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

Javascript jshint,eqnull,使用'===';与';未定义';,javascript,jshint,Javascript,Jshint,我提前道歉,我显然完全无法理解如何配置jshint 我有这行代码 if ( data == undefined || (typeof data === 'object' && data.length === 0) ) { ... jshint在第一个==下面划线,并说 使用“==”与“未定义”进行比较 我添加了/*jshint eqnull:true*/。我想这就是选项的作用。我甚至看到了(搜索eqnull) 我缺少什么?在Javascript中,未定义和空值是两个不同的值。直

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

我有这行代码

if ( data == undefined || (typeof data === 'object' && data.length === 0) ) {
...
jshint在第一个
==
下面划线,并说

使用“==”与“未定义”进行比较

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


我缺少什么?

在Javascript中,
未定义和
空值是两个不同的值。直接将其他值与
undefined
进行比较是有问题的,因为
null==undefined
,但是
typeof null!=未定义的类型

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


如果您希望保留较短的表达式,可以只编写功能相同的
data==null
。如上所述,您需要提供
/*jshint eqnull:true*/
选项。

使用此选项进行同样的操作


“-W041”:false

eqnull
禁止有关与
null
进行比较的警告,而不是
未定义的
。是否可以禁止有关
未定义的
的警告?我在文档中没有看到任何提及此类内容。如果您使用“typeof data=='undefined'”而不是“data==undefined”,不会显示任何警告消息。当没有显示警告时,您不需要取消显示警告。我想使用
==undefined
强制null为undefined
typeof null
是对象。