js中的~和取整

~运算符的本质是取反,在js中是一个针对32位的操做。数据 ~x会先把x转成32位的整数,若是x是number类型的数据,则直接进行转换,不然先转换成32位整数,若是转换失败,则x变成NaN,~NaN会变成-1.这里的转换不是单纯地使用parseInt进行转换,而是相似于js的隐式转换,好比true等于1,false等于0,例如~true会等于-2,这说明true被转换成了1而不是NaN.运算符
相关文章
相关标签/搜索