关于~运算符的使用
Posted 影依贤者
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于~运算符的使用相关的知识,希望对你有一定的参考价值。
关于~
运算的使用
- “~”即“非”运算,在二进制里对数字的每一位进行取反
- 在实际表现上则是
-num-1
即~1=>-2 ~-1=>0
- 在运算时
NaN
被当作0来运算 - 根据这个特性可以在String.indexOf()的结果中直接判断有没有查找的字符
- 在实际表现上则是
所以
!!~string.indexOf("something")
等价于string.includes("something")
- 实际中
~~
更加容易被用到- 经过两次
~~
运算会得到运算数的整数部分 ~~3.14 => 3
~~-3.14 => -3
~~NaN => 0
~~-0 => 0
- 该方法与
Math.trunc()
的唯一不同点是Math.trunc(NaN) => NaN
Math.trunc(-0) => -0
- 经过两次
以上是关于关于~运算符的使用的主要内容,如果未能解决你的问题,请参考以下文章