题解 | #参数解析器#

参数解析器

http://www.nowcoder.com/practice/9a4cca8c0779438a8be39d45d0370597

14_参数解析器

本题考点:位置查找、截取、遍历、正则

根据题目要求,解析参数URL中的参数并返回,核心步骤有:

  1. 创建空对象,用于存储参数信息
  2. 获取URL中"?"的位置并截取之后的参数信息
  3. 获取到参数信息之后通过split拆分为数组
  4. 数组通过遍历每一项将”=“替换为”&“并且再次通过split拆分
  5. 最终将键名和键值赋给空对象

参考答案

const _getParams = (url) => {
    var obj = {}
    let index = url.indexOf('#')
    url = index === -1 ? url : url.slice(0, index)
    if (url.indexOf('?') !== -1) {
        let i = url.indexOf("?")
        let arr = url.slice(i + 1).split('&')
        arr.forEach(function (item) {
            item = item.replace(/\=/, '&')
            let t = item.split('&')
            obj[t[0]] = t[1] !== undefined ? t[1] : null
        })
        return obj
    } else {
        return obj
    }
}

全部评论

相关推荐

热爱生活的咸鱼在吃瓜:个人建议,项目太简单了,实习干的活都是测试的活,反正又没人知道你实习干啥了,你懂吧
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务