!+x 运算符 JavaScript

!+x operator JavaScript

我的第一个问题在这里!抱歉,如果重复 - 找不到答案。

我是 JavaScript 的初学者,目前正在做一些练习,只是 运行 越过一条我无法理解其含义的线。这是:

!+x && x !== '0'

!+x 在这里执行什么操作?行是验证 IP 地址的脚本的摘录。

提前致谢!

它检查 x 变量在转换为数字时是否为假(0 或 NaN),并且不是文字字符串 '0'.

例如 '0.00' 会满足条件,'foo' 也会满足条件,但 '0' 不会。

+是一元+,将后面的表达式转换成数字。然后 ! 否定该数字的布尔值。