js截取网址中的字符串转换为对象

315 阅读1分钟

截取网址中的字符串转换为对象

url(字符串)如下: www.heima.com?key0=haha&key1=hello&key2=xixi ; 要求处理此url, 得到一个如下格式的对象: let obj = { key0:’haha’, key1:’hello’, key2:’xixi’ }

去除不需要的元素

arr2 = arr1.indexOf('?')获取问号出现的索引值,截取后面的元素

    let arr = 'http://www.heima.com?key0=haha&key1=hello&key2=xixi'
        arr1 = arr.split('')
        //删除?之前的元素,
        arr2 = arr1.indexOf('?')
        arr3 = arr1.splice(arr2 + 1)

效果如下: image.png

转换为字符串数组

将数组连接为一个字符串,再转换为字符串数组

//将数组连接为一个字符串
        arr4 = arr3.join('')
        // console.log(arr4);
        // 以&为分割点,分割为字符串数组
        arr5 = arr4.split('&')
        console.log(arr5);

效果如下:

image.png

遍历到对象当中去

把数组中的单个字符串以=为分割点拆分,优化对象

 //把数组遍历到对象中
        obj = {}
        arr6 = arr5.forEach(function (v, i) {
            // 把数组中的单个字符串以=为分割点拆分,
            num2 = v.split('=')
           return obj[num2[0]] = num2[1]

        });

效果如下:

image.png