【问题标题】:What is the difference between != and !== operators in JavaScript?JavaScript 中的 != 和 !== 运算符有什么区别?
【发布时间】:2010-12-25 17:53:54
【问题描述】:

!== 运算符和 JavaScript 中的 != 运算符有什么区别?它的行为是否类似于比较值和类型的 === 运算符?

【问题讨论】:

标签: javascript operators


【解决方案1】:

是的,它和=== 一样的运算符,只是为了in平等:

!== - 如果两个操作数不相同则返回 true。此运算符不会转换操作数类型,并且仅当它们的类型和值相同时才返回 false。 ——Wikibooks

【讨论】:

  • 我真的认为正确的答案需要在其中的某个地方使用强制一词。转换也是有意义的,但为了简洁起见,应该明确它是一种隐式转换。
【解决方案2】:

是的,!== 是 != 运算符的严格版本,如果操作数的类型不同,则不会进行类型强制:

0 != ''            // false, type coercion made
0 != '0'           // false
false != '0'       // false

0 !== ''           // true, no type coercion
0 !== '0'          // true
false !== '0'      // true

【讨论】:

    【解决方案3】:

    我正要发this w3schools page,但有趣的是它没有包含这个运算符!

    至少,!== 确实是 === 的倒数,它测试了类型和值的相等性。

    【讨论】:

      猜你喜欢
      • 2017-04-21
      • 1970-01-01
      • 2022-06-10
      • 2016-03-31
      • 2023-03-15
      • 1970-01-01
      • 2018-08-16
      • 2012-10-10
      相关资源
      最近更新 更多