2017.3.14笔记 & 位运算

javascript 中的 &位运算是指把运算的数字转换为二进制,对照二进制的数字,如果对应位数都相同为1,则返回1,否则就返回0。

例如在判断奇偶数的时候就能用到&位运算,

1~9的二进制分别为  

  0001
  0010
  0011
  0100
  0101
  0110
  0111
  1000
  1001

可见奇数的末尾都为1,偶数的末尾都为0,

所以用&位运算判断奇偶数的时候 ,利用1的二进制 ,只要末尾不是1的,就是偶数,是1的就是计数。

function even(arr){
  var ta = [];
  for(var i = 0; i < arr.length; i++){
    if(!(arr[i] & 1)) ta.push(arr[i]);
  }
  return ta;
}

    

posted @ 2017-03-14 11:32  a fine day  阅读(138)  评论(0编辑  收藏  举报