Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/399.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 null检查-值为null,但检查仍然失败?_Javascript - Fatal编程技术网

JavaScript null检查-值为null,但检查仍然失败?

JavaScript null检查-值为null,但检查仍然失败?,javascript,Javascript,因此,当this.meta.addText为空时,该检查仍会进入if并打印hi 我缺少什么?'null'是一个字符串 将其更改为null if (this.meta.addText !== 'null') { console.log("hi"); } 您可以看到它。因为它是null,而不是字符串。请尝试以下方法: var string1 = null, string2 = 'null'; console.log(string1 == string2); // false co

因此,当
this.meta.addText
为空时,该检查仍会进入
if
并打印
hi


我缺少什么?

'null'
是一个
字符串

将其更改为
null

if (this.meta.addText !== 'null')
{
    console.log("hi");
}

您可以看到它。

因为它是
null
,而不是字符串。请尝试以下方法:

var string1 = null,
    string2 = 'null';

console.log(string1 == string2); // false
console.log(null != 'null'); // true

您是针对字符串“null”进行测试,而不是针对值null进行测试。

无需对此进行否决。Op显然只是对javascript操作符感到困惑,Antonpug我想你应该看看这里来了解更多关于JS的信息:这是你真正的代码吗?是否确实要测试字符串
“null”
?您的实际代码是否测试了
null
,但您打算测试
未定义的
null或未定义的
?请始终尝试使用===和!==避免隐式类型转换的比较器。
if (this.meta.addText !== null)