Get to know MDN better
此页面由社区从英文翻译而来。了解更多并加入 MDN Web Docs 社区。
逻辑非(!,逻辑连接取反)运算符将真值或假值转换为对应的相反值,经常用于布尔(逻辑)值。当与非布尔值使用时,如果其操作数可以转化为 true,则返回 false,否则返回 true。
如果其操作数可以转化为 true,则返回 false,否则返回 true。
能够转化为 true 的值叫做真值,能够转化为 false 的值叫做假值。
能够转化为 false 的表达式的示例如下:
尽管 ! 运算符可以与非布尔操作数一起使用,但它仍然被认为是一个布尔运算符,因为它的返回值总是可以被转换为布尔基本类型。要明确地将其返回值(或任何一般的表达式)转换为相应的布尔值,请使用双非运算符(!!)或 Boolean 构造函数。
下列代码展示了 !(逻辑非)运算符的用法。
可以使用几个非运算符串联起来,明确地强制将任何值转换为相应的布尔基本类型。这种转换是基于值的“真实性”或“虚假性”(详见真值和假值)。
也可以使用 Boolean 函数完成转换。
下述涉及到布尔值的运算:
总是与此表达式相同:
| ECMAScript® 2027 Language Specification # sec-logical-not-operator |
启用 JavaScript 以查看此浏览器兼容性表。