您好,登錄后才能下訂單哦!
這篇文章主要介紹了js異或運算符怎么使用的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇js異或運算符怎么使用文章都會有所收獲,下面我們一起來看看吧。
這個運算符主要是在位運算的時候使用,但是在普通的數也能使用,且有一個轉換過程,即將二進制的數轉換為十進制
var a = 1 ^ 2; //3 //1 -> 01 //2 -> 10 //1 ^ 2 -> 11 -> 3
如上所示,在十進制進行異或運算符操作時也是OK的,結果顯示也是十進制的結果,示例中的轉換過程只是我假象的轉換過程,只是便于理解,假設由十進制到二進制進行異或運算,再將結果轉換為十進制,實際上的運算并不一定是如此
利用異或運算可以找出數組中奇個數的項
var a = [2,3,2,4,4]; for(let i = 0; i < a.length; i++) { a[0] = a[0] ^ a[i]; } //a[0]為3,即單獨存在的一項
這里涉及到離散數學的異或運算性質了
1.交換律:a ^ b ^ c <=> a ^ c ^ b
2.任何數于0異或為任何數 0 ^ n => n
3.相同的數異或為0: n ^ n => 0
因此上面的例子2 ^ 3 ^ 2 ^ 4 ^ 4等價于 2 ^ 2 ^ 4 ^ 4 ^ 3 => 0 ^ 0 ^3 => 3
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <script type="text/javascript"> var a=1; var b=0; //按位與&:兩個操作數都是1,結果才是1 alert(a&b) //結果是0 //按位或:兩個操作數只要有一個是1,結果就是1 alert(a|b) //結果是1 //按位異或:兩個數字一樣,結果為0;兩個數字不一樣,結果就是1。 alert(a^b) //結果是1 //簡單的方法:數字求負,在減1 alert(~a)//結果是-2 </script> <title>位運算符</title> </head> <body> </body> </html>
關于“js異或運算符怎么使用”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“js異或運算符怎么使用”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。