JavaScript之location.search中文乱码的问题

JavaScript的location.search返回URL的查询字符串,这个字符串以问号开头,如下图就是该方法返回的查询字符串:


获取并解析查询字符串的方法:

function getQueryStringArgs() {
    var qs = (location.search.length>0 ? location.search.substring(1):""),
    args = {},
    items = qs.length ? qs.split("&") : [],
    item = null,
    name = null,
    value = null,
    i=0,
    len = items.length;
    for(i=0;i<len;i++){
        item = item[i].split("=");
        name = decodeURIComponent(item[0]);
        value = decodeURIComponent(item[1]);//执行解码,因为中文字符串往往在传递时被编码过了
        if(name.length)
            args[name]=value;

    }
    return args;//args["userid"]=叶倩

}
decodeURIComponent() 解码是关键,如果不解码有可能获取到的userid是一堆被编码过的字符串。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值