Javascript logical "!=="" 运算符详解

引言

在 Javascript 中,我们经常需要判断两个变量是否相等。通常使用的是双等号 == 或三等号 === 运算符。然而,在某些情况下,我们可能需要判断两个变量不相等。这时候就需要用到逻辑运算符中的 !== 运算符。

概述

!== 运算符用于比较两个值是否不相等,它和 === 运算符是互补的关系。当两个值类型相同且值不相等时,!== 运算符返回 true,否则返回 false。

示例

----- - - --
----- - - ----

------------- --- --- -- ----
------------- --- --- -- -----

上面的代码中,a 的值为数字型的 1,b 的值为字符串型的 1。虽然它们的值相等,但是由于它们的类型不同,因此使用 !== 运算符比较时返回 true。

注意事项

对象比较

对于对象的比较,!== 运算符只能判断它们的引用是否相等。如果两个对象的属性值相同,但是它们的内存地址不同,那么使用 !== 运算符比较时会返回 true。

----- ---- - - ----- ------- --
----- ---- - - ----- ------- --
---------------- --- ------ -- ----

上面的代码中,虽然 obj1obj2 的属性值相同,但是它们的内存地址不同,因此使用 !== 运算符比较时会返回 true。

NaN 比较

由于 NaN(Not a Number)是一个特殊的数字类型,它与任何值都不相等,包括它本身。因此,在与 NaN 比较时,即使两个值都是 NaN,使用 !== 运算符也会返回 true。

----- - - ----
----- - - ----
------------- --- --- -- ----

总结

在 JavaScript 中,逻辑运算符 !== 用于判断两个值是否不相等。当两个值类型相同且值不相等时,!== 运算符返回 true,否则返回 false。需要注意的是,对象比较时只能判断引用是否相等,NaN 比较时总是返回 true。在实际开发中,我们应该根据具体情况选择适当的比较方式,以保证程序的正确性和可维护性。

来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/26436