Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用javascript对字符串进行异或_Javascript_Angularjs - Fatal编程技术网

如何使用javascript对字符串进行异或

如何使用javascript对字符串进行异或,javascript,angularjs,Javascript,Angularjs,我正在尝试对两个字符串进行异或运算。它用指数表示法返回值,但在我的例子中,我需要用0填充不匹配的字符串 x1=“00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000”; x2=“00000000000000000000000000000000000011000000000000000000000000000000000000000000000000”; xo

我正在尝试对两个字符串进行异或运算。它用指数表示法返回值,但在我的例子中,我需要用0填充不匹配的字符串

x1=“00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000”;
x2=“00000000000000000000000000000000000011000000000000000000000000000000000000000000000000”;
xor1=parseInt(x1,2);
xor2=parseInt(x2,2);

console.log(xor1,xor2)在代码中,您正在将字符串解析为二进制数
parseInt(“0001100”,2)
是十进制的
0b001100
,或
12
。您试图解析的数字远远大于,但无论如何这都是无关紧要的

无法使用xor将前导零添加到数字中,因为前导数始终隐式存在,因此不会更改数字的表示形式:

(0b0000^0b100)==0b100
,因此
将字符串(2)
-ing留给您的是
“100”

你需要一个字符一个字符地检查你的字符串,然后从中构建一个字符串

让x=“11000000000000000000000000000000000000”;
让mask=“00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000”;
让结果=mask.split(“”).reduceRight(函数(partialResult,值,索引){
如果(索引console.log(“结果为:”+Result)这些数字太大,JavaScript无法精确处理。考虑使用字符串函数,一次只做一个字符并连接结果。只需为字符编写自己的XOR。请看一些想法。这与angularjs有什么关系?不要仅仅因为你在应用程序的其他部分使用了框架,就在语言问题上使用框架标签。。。。