一个不错的字符串转码解码函数(自写)

时间:2022-03-16 07:53:25
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
function isString(variable) {
  return Object.prototype.toString.call(variable).indexOf('String') != -1;
}
 
function isNumeric(variable) {
  return !isNaN(parseFloat(variable)) && isFinite(variable);
}
 
function stringEncode(string) {
  string = isString(string) || isNumeric(string) ? String(string) : '';
 
  var code,
    i = 0,
    code_string = '',
    len = string.length;
 
  while(i < string.length) {
    code = string.charCodeAt(i);
    code_string += '' + String(code).length + code;
    i++;
  }
 
  return code_string;
}
 
function stringDecode(code) {
  var i = 0,
    code_len,
    decode_string = '';
  code = String(code);
  while(i < code.length) {
    code_len = +code.charAt(i);
    i++;
    decode_string += String.fromCharCode(+code.substr(i, code_len));
    i += code_len;
  }
  return decode_string;
}