作用:会将所有值转换为整数,再用二进制表示,最后执行按位取反。
对于null,undefined,对象,字符串(含有非数字)等非数字,~均返回-1,
对于数值或者纯数值字符串X,返回-(X+1),去除小数部分。
~null;//-1
~undefined;//-1
~'123abc';//-1
~{};//-1
~123//-124
~'123'//-124
//常用于代替String中indexOf方法返回-1的情况
if('abcd'.indexOf('e')===-1)//没有匹配到
//~来代替上述条件===判断
if(!~'abcd'.indexOf('e'))//没有匹配到'e'
if(~'abcd'.indexOf('e'))//匹配到'e'