公告:1.设计模式、redis、微信硬件jsapi、java并发等教程持续更新中... 2.本站提供的所有源码都经过测试正常运行,转载请注明出处! 3.友情交换/给本站留言

案例归档:  js 16进制字符串相互转换—实现代码

字符串转16进制

function strToHexCharCode(str) {
  if(str === "")
    return "";
  var hexCharCode = [];
  hexCharCode.push("0x"); 
  for(var i = 0; i < str.length; i++) {
    hexCharCode.push((str.charCodeAt(i)).toString(16));
  }
  return hexCharCode.join("");
}

16进制转字符串

function hexCharCodeToStr(hexCharCodeStr) {
  var trimedStr = hexCharCodeStr.trim();
  var rawStr = 
  trimedStr.substr(0,2).toLowerCase() === "0x"
  ? 
  trimedStr.substr(2) 
  : 
  trimedStr;
  var len = rawStr.length;
  if(len % 2 !== 0) {
    alert("Illegal Format ASCII Code!");
    return "";
  }
  var curCharCode;
  var resultStr = [];
  for(var i = 0; i < len;i = i + 2) {
    curCharCode = parseInt(rawStr.substr(i, 2), 16); // ASCII Code Value
    resultStr.push(String.fromCharCode(curCharCode));
  }
  return resultStr.join("");
}

例如 16进制为61626364,实际上为abcd的16进制

alert(hexCharCodeToStr('61626364'))