//JavaScript 文本和十六进制互转
/*
通过String 对象以下两个方法
1、charCodeAt(i) 返回 符串第i个字符的 Unicode 编码(H 的 Unicode 值)
2、fromCharCode(65) 将Unicode 编码(65)转为一个字符A
3、全局函数 parseInt(Str,radix) 将字符串Str转换为16进制的整数
*/
var text='张三';
function toHexString(s){
if(!s.length){
return '';
}
var array=new Array();
for(var i=0;i < s.length;i++){
array.push(s.charCodeAt(i).toString(16));
}
return array.join();
}
var r1=toHexString(text);
console.log('r1='+r1)
// 输出结果:r1=5f20,4e09
function hexArrayToString(s){
if(!s.length){
return '';
}
var reText='';
var fmtarray=s.split(',');
for(var i=0;i < fmtarray.length;i++){
var val=String.fromCharCode(parseInt(fmtarray[i],16));
reText=reText.concat(val)
}
return reText;
}
var r2=hexArrayToString('5f20,4e09');
console.log('r2='+r2)
// 输出结果:r2=张三