您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Javascript:将Unicode字符串转换为十六进制

Javascript:将Unicode字符串转换为十六进制

请记住,JavaScript代码单元为16位宽。因此,十六进制字符串形式将是每个代码单位4位数字。

用法

var str = "\u6f22\u5b57"; // "\u6f22\u5b57" === "漢字"
alert(str.hexEncode().hexDecode());

字符串到十六进制形式:

String.prototype.hexEncode = function(){
    var hex, i;

    var result = "";
    for (i=0; i<this.length; i++) {
        hex = this.charCodeAt(i).toString(16);
        result += ("000"+hex).slice(-4);
    }

    return result
}

再次回来:

String.prototype.hexDecode = function(){
    var j;
    var hexes = this.match(/.{1,4}/g) || [];
    var back = "";
    for(j = 0; j<hexes.length; j++) {
        back += String.fromCharCode(parseInt(hexes[j], 16));
    }

    return back;
}
javascript 2022/1/1 18:15:04 有585人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶