JavaScript!和 !!差异

发布于 2024-11-10 18:59:17 字数 287 浏览 2 评论 0原文

可能的重复:
什么是!! JavaScript 中的运算符?

这两个运算符有什么区别?做 !!有特殊含义,或者只是意味着您正在做两个“!”运营。我知道 Javascript 中有“Truth”和“Truthy”概念,但我不确定是否有!!是为了“真理”

Possible Duplicate:
What is the !! operator in JavaScript?

What is the difference between these two operators? Does !! have special meaning, or does it simply mean you are doing two '!' operations. I know there are "Truth" and "Truthy" concepts in Javascript, but I'm not sure if !! is meant for "Truth"

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

白首有我共你 2024-11-17 18:59:18

!!只是双倍!

!true // -> false
!!true // -> true

!!是将某些内容转换为布尔值的常见方法

!!{}  // -> true
!!null // -> false

!! is just double !

!true // -> false
!!true // -> true

!! is a common way to cast something to boolean value

!!{}  // -> true
!!null // -> false
撧情箌佬 2024-11-17 18:59:18

编写 !! 是将“true”或“falsey”变量转换为真正布尔值的常见方法。

例如:

var foo = null;

if (!!foo === true) {
    // Code if foo was "truthy"
}

第一个!应用于foo后,返回值为true。再次注意到该值会使其成为 false,这意味着 if 块内的代码不会被输入。

Writing !! is a common way of converting a "truthy" or "falsey" variable into a genuine boolean value.

For example:

var foo = null;

if (!!foo === true) {
    // Code if foo was "truthy"
}

After the first ! is applied to foo, the value returned is true. Notting that value again makes it false, meaning the code inside the if block is not entered.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文