function getRandom(seed){//从后端传入,是一个long类型的数字
        var multiplier = 0x5DEECE66D;
var addend = 0xB;
var mask = (1 << 48) - 1;
        var seed;
        this.seed = (seed ^ multiplier) & mask;//异或的时候溢出了,求解决。
}请大家指教!javascript位运算溢出

解决方案 »

  1.   

    请问大虾您能给小弟一个类似的demo吗?实在是给折磨的神经衰弱了
      

  2.   

    请问大虾您能给小弟一个类似的demo吗?实在是给折磨的神经衰弱了
    是用第2方法实现的function xor(a,b){
    a=a.toString(2).split('').reverse();
    b=b.toString(2).split('').reverse();
    var L=Math.max(a.length,b.length),re=[];
      for(var i=0;i<L;i++){
       re.push(   a[i]&& b[i]?(  a[i]!=b[i]?1:0):( a[i]||b[i] )  )
      }
      return parseInt( re.reverse().join(''),2);
    }
      

  3.   

    请问大虾您能给小弟一个类似的demo吗?实在是给折磨的神经衰弱了
    是用第2方法实现的function xor(a,b){
    a=a.toString(2).split('').reverse();
    b=b.toString(2).split('').reverse();
    var L=Math.max(a.length,b.length),re=[];
      for(var i=0;i<L;i++){
       re.push(   a[i]&& b[i]?(  a[i]!=b[i]?1:0):( a[i]||b[i] )  )
      }
      return parseInt( re.reverse().join(''),2);
    }

    谢谢fzfei2!!!终于解决了!!