Javascript!=只检查值

时间:2018-03-05 06:33:50

标签: javascript

当我执行'null' != null时,它返回true。我不知道为什么会这样。

如果我执行1 != '1',它会返回false,这是正确的,因为它会检查值。

但为什么'null' != null会返回true?

4 个答案:

答案 0 :(得分:4)

  

... null表示缺乏识别,表明变量指向无对象。

Source

字符串'null'是一个对象,因此它不是null,表示缺少对象。

答案 1 :(得分:0)

凯文的答案是正确的,但是你可以在这里得到更详细的解释:如何确定比较:

http://www.ecma-international.org/ecma-262/5.1/#sec-11.9.3

在要求转换另一方的规范中,没有条件的一方为空的实例。但是,如果条件的一侧是数字,则存在将另一侧转换为数字的规范。

答案 2 :(得分:0)

长篇故事

https://www.w3schools.com/js/js_comparisons.asp

短篇小说nullintstring始终为假,如果您没有为intstring分配值,则可以为{{ 1}}

因此null'null',其值为string'null'null,因此它们不相等。

答案 3 :(得分:0)

enter image description here

这是图片,你可以获得关于类型检查和平等的想法