JavaScript中的逻辑运算符 - 您如何使用它们?

Dar*_*htA 1 javascript logical-operators

我不明白如何&&,||并且!工作...与bool和其他数据类型.你怎么用它们?

SLa*_*aks 6

Javascript中的所有值都是"truthy"或"falsy".

  • a && b 评估第一个虚假操作数
  • a || b 评估第一个真正的操作数

两个运算符都不会在返回之后评估任何操作数.
如果所有操作数都不匹配,它将评估到最后一个.

  • !a评估true是否a是假的,false如果a是真的.

所有值都是真实的,除了以下,这是假的:

  • false
  • +0
  • -0
  • NaN
  • ""
  • null
  • undefined
  • document.all

  • @Ivo:1:已修复。2:这无关紧要;`!NaN` 是 `true`,所以 `NaN` 是 false。 (2认同)
  • @Ivo:SLaks仅列出JavaScript的虚假值.他并没有对"NaN"或任何其他价值观提出任何其他要求. (2认同)