【URL】参数转换成对象

限于喜欢 提交于 2020-07-29 10:54:21

参数转换成对象

let urlStr = 'http://my.oschina.net?name=judy&study=js&study=node'

目标:

 { name: 'judy', study: [ 'js', 'node' ] }

参数转换成对象

// 参数转成对象
function queryString(request){
    let params = request.split('?')[1];
    let param = params.split('&');
    let obj = {};
    for (let i = 0;i<param.length;i++){
        let paramsA = param[i].split('=');
        let key = paramsA[0];
        let value = paramsA[1];
        if(obj[key]){
            obj[key] = Array.isArray(obj[key])?obj[key]:[obj[key]];
            obj[key].push(value);
        }else{
            obj[key] = value;
        }
    }
    return obj;
}
console.log(queryString(urlStr)); 
// { name: 'judy', study: [ 'js', 'node' ] }
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!