function hex2a(hex)
{
var str = '';
for (var i = 0; i < hex.length; i += 2)
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
return str;
}
此功能在 chrome 中不起作用,但在 mozila 中运行良好。谁能帮忙。
提前致谢
function hex2a(hex)
{
var str = '';
for (var i = 0; i < hex.length; i += 2)
str += String.fromCharCode(parseInt(hex.substr(i, 2), 16));
return str;
}
此功能在 chrome 中不起作用,但在 mozila 中运行良好。谁能帮忙。
提前致谢
从你的评论看来你在打电话
hex2a('000000000000000000000000000000314d464737');
并提醒结果。
您的问题是您正在构建一个以 0x00 开头的字符串。此代码通常用作以空字符结尾的字符串的字符串终止符。
删除00
at start :
hex2a('314d464737');
您可以像这样修复您的函数以跳过那些空“字符”:
function hex2a(hex) {
var str = '';
for (var i = 0; i < hex.length; i += 2) {
var v = parseInt(hex.substr(i, 2), 16);
if (v) str += String.fromCharCode(v);
}
return str;
}
请注意,您的充满 0x00 的字符串仍可能在其他上下文中使用,但 Chrome 无法提醒它。你不应该使用这种字符串。