1
我试图端口下面的从Java到JavaScript的:的JavaScript和Java - 字符串编码
String key1 = "whatever";
String otherKey = "blah";
String key2;
byte keyBytes[] = key1.getBytes();
for (int i = 0; i < keyBytes.length; i++) {
keyBytes[i] ^= otherKey.charAt(i % otherKey.length());
}
key2 = new String(keyBytes);
下面是我写的东西:
var key1 = "whatever";
var other_key = "blah";
var key2 = "";
for (var i = 0; i < key1.length; ++i)
{
var ch = key1.charCodeAt(i);
ch ^= other_key.charAt(i % other_key.length);
key2 += String.fromCharCode(ch);
}
然而,他们给出不同的答案。 ...
什么是catch,JavaScript字符串编码不同,我该如何纠正它们?
Java字节是8位; javascript char是unicode 16位。 – fred02138
代码的第一部分以多种方式崩溃,不应该在Java中使用,更不要说移植到Javascript。 –
@JonSkeet请问你能解释一下为什么它会被破坏? :) –