将url的查询参数解析成字典对象
2017-09-12 23:51
330 查看
1,
这个题目不约而同的出现在了多家公司的面试题中,当然也是因为太过于典型,解决方案无非就是拆字符或者用正则匹配来解决,我个人强烈建议用正则匹配,因为url允许用户随意输入,如果用拆字符的方式,有任何一处没有考虑到容错,就会导致整个js都报错。而正则就没有这个问题,他只匹配出正确的配对,非法的全部过滤掉,简单,方便。
实现代码:
2,将对象转化成url参数。fetch
用到此方法
3 $.param和上述param方法一样
来源:http://www.cnblogs.com/leee/p/5206848.html
这个题目不约而同的出现在了多家公司的面试题中,当然也是因为太过于典型,解决方案无非就是拆字符或者用正则匹配来解决,我个人强烈建议用正则匹配,因为url允许用户随意输入,如果用拆字符的方式,有任何一处没有考虑到容错,就会导致整个js都报错。而正则就没有这个问题,他只匹配出正确的配对,非法的全部过滤掉,简单,方便。
实现代码:
function getQueryObject(url) { url = url == null ? window.location.href : url; var search = url.substring(url.lastIndexOf("?") + 1); var obj = {}; var reg = /([^?&=]+)=([^?&=]*)/g; search.replace(reg, function (rs, $1, $2) { var name = decodeURIComponent($1); var val = decodeURIComponent($2); val = String(val); obj[name] = val; return rs; }); return obj; } getQueryObject("http://www.cnblogs.com/leee/p/4456840.html?name=1&dd=ddd**") Object {name: "1", dd: "ddd**"}
2,将对象转化成url参数。fetch
用到此方法
3 $.param和上述param方法一样
decodeURIComponent($.param(defaults)) var defaults={ _c:'resource_hub_reports', _l:3, _log:JSON.stringify({s0:1}) } var url = 'http://log.17zuoye.net/log?'+decodeURIComponent($.param(defaults));
来源:http://www.cnblogs.com/leee/p/5206848.html
相关文章推荐
- 将url的查询参数解析成字典对象
- 将url的查询参数解析成字典对象
- 将url的查询参数解析成字典对象
- 将url的查询参数解析成字典对象
- 将url的查询参数解析成字典对象
- Js把URL中的参数解析为一个对象
- 把URL参数解析为一个对象
- 编写一个参数JavaScript函数parseQueryString,它的用途是把url参数解析为一个对象
- 解析地址栏中的查询字符串参数,返回对象
- 解析URL的查询串中的name=value参数对
- javascript:将URL的参数列表解析为一个对象
- js解析url查询参数
- 一个JavaScript函数把URL参数解析成Json对象
- 请编写一个JavaScript函数 parseQueryString,它的用途是把URL参数解析为一个对象
- 解析url成字典对象
- Web前端面试题 Js把URL中的参数解析为一个对象
- 编写一个JavaScript函数 parseQueryString,把URL参数解析为一个对象
- 从URL中提取参数与将对象转换为URL查询参数的实现代码
- URL参数解析成一个Json对象
- 从URL中提取参数与将对象转换为URL查询参数的实现代码