百度移动版的url编码解码示例
内容摘要
复制代码 代码如下: var decode = function(m) { try { m = decodeURIComponent(m); } catch(e) {} var s = m.split("%"); if (s.length > 1) { s.shift(); for(var i = 0;
文章正文
复制代码 代码如下:
var decode = function(m) {
try {
m = decodeURIComponent(m);
} catch(e) {}
var s = m.split("%");
if (s.length > 1) {
s.shift();
for(var i = 0; i < s.length; i++) {
var t = s[i];
t = parseInt(t, 16);
t = t + 256;
t = t - 201;
t = t.toString(16);
s[i] = t;
}
m = '%'+s.join('%');
return decodeURIComponent(m);
} else {
return m;
}
}
var encode = function(i) {
i = encodeURIComponent(i);
i = i.replace(/%(.{2})/gi, function(l) {
var m = l.replace("%", "");
console.log(m);
m = parseInt(m, 16);
m = parseInt('201') + m;
m = m % 256;
m = m.toString(16);
if (m.length < 2) {
m = "0" + m
}
m = "%" + m;
return m
});
return i;
}
代码注释