var E = (((D[B >> 2] >> 8 * (B % 4)) & 255) << 16) | (((D[B + 1 >> 2] >> 8 * ((B + 1) % 4)) & 255) << 8) | ((D[B + 2 >> 2] >> 8 * ((B + 2) % 4)) & 255);

解决方案 »

  1.   

    不懂的话,看一下JScript手册的运算符解释就清楚了啊。
      

  2.   

    如果没有上下文,这个代码可以是任何意义。不过,我看到那么多的255, <<, 16符号,我猜想应该和颜色处理有关。
      

  3.   

    var E = (((D[B >> 2] >> 8 * (B % 4)) & 255) << 16) | (((D[B + 1 >> 2] >> 8 * ((B + 1) % 4)) & 255) << 8) | ((D[B + 2 >> 2] >> 8 * ((B + 2) % 4)) & 255);你要一点一点的看 你主要懂 >> % << & | []这些是什么意思你就能慢慢理解这段话,另外值还是要参照上下文的
    B >> 2 位右移2次,相当于B/4 假设值=1,则D[1] 表示数组的值这个值>> 8 相当于值/2的8次方
    B%4 取模 是b/4以后的余数,
    (D[B >> 2] >> 8 * (B % 4)) 这个你就明白了吧 & 是位与 | 是位或 
    太多了自己研究吧