MDN定义:位运算符将它的操作数视为32位元的二进制串(0和1组成)而非十进制八进制或十六进制数。
例如:十进制数字9用二进制表示为1001,位运算符就是在这个二进制表示上执行运算,但是返回结果是标准的JavaScript数值。
位运算符有7个,这里只讲一个:按位异或^
用法:
a^b, 运算规则:在a,b的位表示中,每一个对应的位,两个不相同则返回1,相同则返回0.
代码示例:
/**
* @param {number[]} nums
* @return {number}
*/
var singleNumber = function(nums) { // 如果相同数字,则其二进制都一样,返回0,不一样的返回1,这段代码,返回了nums数组中唯一不一样的值
var a
for (var index=0, leng=nums.length; index<leng; index++){
a ^= nums[index]
}
return a
};