javascript中!(--n)是什么意思

JavaScript038

javascript中!(--n)是什么意思,第1张

我们把这句代码分为3部分:

--n:自减

():改变执行顺序

!:非

n是一个变量,--n就是将这个变量的数值减去1,也就是n = n - 1,如:n-5,那么--n就等于4

!(感叹号)是非运算,就是not,这里是将括号内的值转化为Boolean型后取非。

刚才说了--n,n是一个数值,那么转化为boolean型后是什么?所有非0数值被转化为boolean型都是true,0转化后是false。

那么--n如果等于0,转化后就是false,再取反,就是true;如果--n非0,那么转化后是true,再取反就是false;那么--n在什么情况下会被转化为false呢?很明确,n等于1时。

总结以上几点,最终答案是:

如果n等于1,那么这句代码返回true

如果n不等于1,那么这句代码返回false

~ 是 位运算 NOT,按位取反var iNum1 = 25//25 等于 00000000000000000000000000011001var iNum2 = ~iNum1//转换为 11111111111111111111111111100110alert(iNum2)//输出 "-26"相当于是对数值求负后减125 ->-25 ->-26