题解 | #参数解析器#

参数解析器

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
    }
}

全部评论

相关推荐

点赞 评论 收藏
分享
不愿透露姓名的神秘牛友
07-10 14:00
林子大了什么鸟都有啊,我觉得我说的已经很客气了,阴阳谁呢
牛客62656195...:应该不是阴阳吧?你第一次注册的时候boss就说你是牛人
点赞 评论 收藏
分享
强大的马里奥:不太可能,我校计算机硕士就业率99%
点赞 评论 收藏
分享
评论
2
收藏
分享

创作者周榜

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