这个程序中按位运算的目的是什么?

时间:2015-03-14 17:40:43

标签: javascript

对这个模糊的问题感到抱歉。任何人都可以告诉我在下面的代码中按位操作bSet | bStyle << 1的目的/结果是什么?是否需要对此特定代码进行编码?

var aDOMFunc = [Element.prototype.removeAttribute,
  //....
  ];

  function setSomething(bStyle, sProp, sVal) {
    var bSet = Boolean(sVal), 
   fAction = aDOMFunc[bSet | bStyle << 1],
   //...
}

2 个答案:

答案 0 :(得分:1)

多个bStyle由2进行按位或。我猜他们必须对它进行编码,这样它就会给你0-3的数字

答案 1 :(得分:1)

如果没有更多的上下文,很难知道目的,但看起来目的是建立一个位值,并在末尾添加'bset'位。这可能是为了构建一个bitflag(一个持有多个设置的值),变量名称的'action'部分可以提供一个信任的smidgen。

相关问题