您的位置:首页 > Web前端 > JavaScript

JS将URL中的UTF-8字符串转成中文字符

2012-09-15 15:29 253 查看
将URL中的UTF-8字符串转成中文字符,如将%E7%BC%96%E7%A8%8B%E8%AF%AD%E8%A8%80 转成“编程语言”

函数getCharFromUtf8实现如下:

//将URL中的UTF-8字符串转成中文字符串
function getCharFromUtf8(str) {
var cstr = "";
var nOffset = 0;
if (str == "")
return "";
str = str.toLowerCase();
nOffset = str.indexOf("%e");
if (nOffset == -1)
return str;
while (nOffset != -1) {
cstr += str.substr(0, nOffset);
str = str.substr(nOffset, str.length - nOffset);
if (str == "" || str.length < 9)
return cstr;
cstr += utf8ToChar(str.substr(0, 9));
str = str.substr(9, str.length - 9);
nOffset = str.indexOf("%e");
}
return cstr + str;
}

//将编码转换成字符
function utf8ToChar(str) {
var iCode, iCode1, iCode2;
iCode = parseInt("0x" + str.substr(1, 2));
iCode1 = parseInt("0x" + str.substr(4, 2));
iCode2 = parseInt("0x" + str.substr(7, 2));
return String.fromCharCode(((iCode & 0x0F) << 12) | ((iCode1 & 0x3F) << 6) | (iCode2 & 0x3F));
}


//获取当前页面的URL

var url = location.href;

//截取传递参数
var paraString = url.substring(url.indexOf("=") + 1, url.length);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: