位运算NOT , 用 ~ 表示。 作用:按位取反
运算过程:
- 把要运算的数转换成 32 位数字
- 二进制数转换为二进制反码(0—>1,1—>0)
- 转换成浮点数
简单地说就是:如果对x进行运算,~x
的结果和 -(x + 1)
相同。 ~~x
则是 -(-(x+1) + 1)
。
如果x为布尔值,则会对true
对应的1,和false
对应的0进行运算
~~ true // 1
~~ false // 0
~~x
还可代替 parseInt(x)
,把浮点数转换成整数
~~ 66.9 //66
parseInt(66.9) //66