1、有点笨的方法
var msg = "小笑哈";
function encode(msg){ //编码
var code = "";
for(var i=0;i<msg.length;i++){
var ca = msg.charCodeAt(i);
//不足5位,补足5位,加0
/*if(ca < 10){ //遇不到这样的情况
ca = "0000" + ca;
}else*/if(ca < 100){
ca = "000" + ca;
}else if(ca < 1000){
ca = "00" + ca;
}/*else if(ca < 10000){ //遇不到这样的情况
ca = "0" + ca;
}*/
code += ca;
console.log(ca);
}
return code;
}
var code = encode(msg);
console.log(code);
function decode(code){ //解码
var tmpStr = "";
var result = "";
for(var i=0;i<code.length;i++){
tmpStr += code[i];
if((i+1)%5==0){
console.log(tmpStr);
result += String.fromCharCode(tmpStr);
tmpStr = "";
}
}
return result;
}
var deMsg = decode(code);
console.log("转换后的:"+deMsg);
2、巧妙的方法
var msg = "小笑哈";
function encode(msg){ //编码
var code = "";
for(var i=0;i<msg.length;i++){
var ca = msg.charCodeAt(i);
//不足5位,补足5位,加0
ca = (ca+100000+"").slice(1); //巧妙的处理方法
code += ca;
console.log(ca);
}
return code;
}
var code = encode(msg);
console.log(code);
function decode(code){ //解码
var result = "";
for(var i=0;i<code.length;i+=5){
result += String.fromCharCode(code.slice(i,i+5));
//result += String.fromCharCode(code.substring(i,i+5));
//result += String.fromCharCode(code.substr(i,5)); //获取从i起5个...
//code.substring(i,i+5)
//code.substr(i,5)
}
return result;
}
var deMsg = decode(code);
console.log("转换后的:"+deMsg);