美文网首页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