-2
如何将下面的代码从PHP转换为JavaScript?JavaScript的等效PHP的chr()函数
$str = '';
for ($i = 0; $i < 256; $i++) {
$str .= chr($i);
}
我知道String.fromCharCode(n)
在JavaScript类似于PHP chr(n)
,但似乎他们返回不同的字符时n大于127
如何将下面的代码从PHP转换为JavaScript?JavaScript的等效PHP的chr()函数
$str = '';
for ($i = 0; $i < 256; $i++) {
$str .= chr($i);
}
我知道String.fromCharCode(n)
在JavaScript类似于PHP chr(n)
,但似乎他们返回不同的字符时n大于127
PHP的CHR()函数0..127输入解释为ascii值以及128..255作为IBM代码页437(CP437,专有扩展ascii)值的输入。这是PHP使用的完整ASCII表:http://www.asciitable.com/
JavaScript的String.fromCharCode(i)方法将输入解释为UTF-8值,它类似于ascii(从0..127),但不是IBM CP437扩展ascii (从128..255)。
您可以尝试在JavaScript中重新创建PHP的chr()函数, G。如下(未经测试):
function chr(n) {
if (n < 128) {
return String.fromCharCode(n);
} else {
return "ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜ¢£¥₧ƒáíóúñѪº¿⌐¬½¼¡«»░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "[n - 128];
}
}
您的预期输出是什么? – Patrick2607
您需要包含您的输入和输出,以及您遇到的任何错误。 – ssube
你想要做什么? JavaScript根本不使用ASCII,你的字符串可能也不会这样做(我们在2016年!)。 –