美文网首页web前端经典面试题
url参数解析为一个对象与序列化数据为URL参数

url参数解析为一个对象与序列化数据为URL参数

作者: 全栈弄潮儿 | 来源:发表于2019-05-07 17:14 被阅读2次

url参数解析为一个对象

const url_t = "http://www.taobao.com/index.html?key0=0&key1=1&key2=2";
function parseQueryString(url){
    let result = {};
    
    if(!url || ('string' !== typeof url && String !== url.constructor)){
        return result;
    }
    const str = url.split("?");
    const items = str && str.length > 1 ? str[1].split("&") : [];
    let arr = [];

    for(let i=0; i<items.length; i++) {
        arr=items[i].split("=");
        result[arr[0]]=arr[1];
    }

    return result;
}

const obj=parseQueryString(url_t);
console.log(obj)

序列化数据为URL参数

function serialize(data) {
    const queryList = Object.keys(data).map((key) => {
        return key + '=' + encodeURIComponent(data[key]);
    });
    return queryList.join('&');
}

const data = {
     key0: 0,
     key1: 1,
     key2: 2
}

serialize(data );

相关文章

网友评论

    本文标题:url参数解析为一个对象与序列化数据为URL参数

    本文链接:https://www.haomeiwen.com/subject/oaecoqtx.html