js 位运算符

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
};

 

posted @ 2018-08-16 20:52  迪迪的博客  阅读(324)  评论(0编辑  收藏  举报