js 位运算符 ~, ,| ,^
生活随笔
收集整理的這篇文章主要介紹了
js 位运算符 ~, ,| ,^
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1、位運算 NOT 由否定號(~)表示
位運算 NOT 是三步的處理過程:
例如:
//31位表示整數的數值,用第 32 位表示整數的符號,0 表示正數,1 表示負數 var a1 = 35; //35 0000 0000 0000 0000 0000 0000 0010 0011 //為了看到清楚 4位斷一下 var a2 = ~a1; //轉換為 1111 1111 1111 1111 1111 1111 1101 1100 console.log(a2) // -26位運算 NOT 實質上是對數字求負,然后減 1,因此 25 變 -26。例:
var a1 = 35; var a2 = -a1 - 1 console.log(a2) // -36?2、位運算 AND 由和號(&)表示
位運算 AND 是三步的處理過程:
例:
var a = 33; 0010 0001 var b = 47; 0010 1111=>0010 0001 轉換為10進制 等于33 即 console.log( 33 & 47) // 333、位運算 OR 由符號(|)表示
位運算 OR 是三步的處理過程:
例:
var a = 27; 0001 1011 var b = 51; 0011 0011=> 0011 1011 轉換為十進制 59 即 console.log(a | b) // 594、位運算 XOR 由符號(^)表示
位運算 XOR 是三步的處理過程:
例:?
var a = 77; => 0100 1101 var b = 61; => 0011 1101=> 0111 0000 轉換為十進制 => 112 即console.log( 77 ^ 61 ) // 等于 112?
總結
以上是生活随笔為你收集整理的js 位运算符 ~, ,| ,^的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Promise解决多个异步Ajax请求导
- 下一篇: java IO流:字节流、字符流