
var url = 'zhidao.baidu.com/new?word=js+unction&ie=GBK'
url = url.split('?')[0]
window.history.pushState({}, 0, url)
// 至于你说的要变成zhidao.baidu.com,则再根据 / 来 *** 作
var url = 'zhidao.baidu.com/new?word=js+unction&ie=GBK'
var http_ = url.indexOf('//')>-1?url.split('//')[0]+'//':''
var c = url.indexOf('//')>-1?url.split('//')[1]:url
var cont_ = c.indexOf('/')>-1?c.split('/')[0]:c.indexOf('?')>-1?c.split('?')[0]:c
url = http_+cont_
window.history.pushState({}, 0, url)
我们在处理url的跳转时,往往会在url后面带着很多参数。有时候需要把这些参数转化成对象当作参数进行跳转或其他之用,比如angular2的 routerLink的地址是不带参数的,参数写在 queryParams里,这时候就需要对url进行处理。
当然可能还有其他地方可能会用到此类转换。
下面介绍对于url参数的几种转换方法
1. js处理,利用split()和循环实现
结果 { a: 10 , b :2}
2. 利用querystring
querystring是在node封装好的一个模块,有处理string的方法直接处理这种地址
这种方法可以直接进行处理
参考链接 Query String querystring 模块的使用
3. 利用lodash处理
结果也是正确的。
不过lodash不会,所以把别人提供的方法放在这,再来在细细研究lodash
此方法已更新至文章 Lodash使用入门
参考链接 lodash文档
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)