小编Joh*_*nan的帖子

Javascript - 将字符串编码为HEX

我有我的功能将字符串转换为十六进制:

function encode(str){
    str = encodeURIComponent(str).split('%').join('');
    return str.toLowerCase();
}
Run Code Online (Sandbox Code Playgroud)

例:

????

alert(encode('????'));

输出将是:

e5ae88e68aa4e69d91e5ad90

它适用于汉字.但是当我用英文字母做的时候

alert(encode('Hello World'));

它输出:

hello20world

我试过这个将字符串转换为十六进制:

function String2Hex(tmp) {
    var str = '';
    for(var i = 0; i < tmp.length; i++) {
        str += tmp[i].charCodeAt(0).toString(16);
    }
    return str;
}
Run Code Online (Sandbox Code Playgroud)

然后尝试上面的中文字符,但它输出UTF-8 HEX:

5b8862a467515b50

不是ANSI Hex:

e5ae88e68aa4e69d91e5ad90

我也搜索过将UFT8转换为ANSI但没有运气.有人可以帮帮我吗?谢谢!

javascript hex utf-8

6
推荐指数
3
解决办法
2万
查看次数

标签 统计

hex ×1

javascript ×1

utf-8 ×1