我有一个网址在数据库中,并将编码与php函数bin2hex()。我想把它解码回javascript。
这两个函数给出完全相同的输出。但是什么功能更好、更快、更可靠呢?因为它必须在所有台式机和移动设备上工作。
function first_HexToString(input) {
var result = "";
for(q = 0; q < input.length; q += 2) {
result += '%' + input.substr(q,2);
}
return decodeURIComponent(result);
}
function second_HexToString(input) {
var result = "";
for(q = 0; q < input.length; q += 2) {
result += String.fromCharCode(parseInt(input.substr(q,2),16));
}
return result;
}url不是非常非常秘密,在Firebug或类似的东西中会显示得很简单,我的想法是可以对url进行编码。;-)
发布于 2015-05-19 06:43:55
在性能方面,我倾向于使用第一个函数,因为它的方法调用较少: input.length*3/2+1,而第二个函数使用的是input.length*2。
计算详情:
发布于 2015-05-19 20:05:23
如果decodeURIComponent()的性能可以忽略,那么这也是可能的。哈!
function third_HexToString(input) {
return decodeURIComponent(input.replace(/(.{1,2})/g, "%$1"));
}https://stackoverflow.com/questions/30313817
复制相似问题