异类的Javascript处理和解析URL的方式
2014-03-24 00:00
387 查看
摘要: 通常来说,我们使用Javascript处理和解析URL是使用location对象。在今天这个代码小技巧中,我们使用另外一个比较异类的方式处理和解析URL。
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/b3d95288f0735f9fbf461603cc15b22e.jpg)
通常来说,我们使用Javascript处理和解析URL是使用location对象。在今天这个代码小技巧中,我们使用另外一个比较异类的方式处理和解析URL。
代码如下:
如何使用这个方法呢?简单如下:
GBdebug在线调试唯一地址:http://www.gbtags.com/gb/debug/c8946680-fb7f-4a2b-8cb7-9c81b420a74a.htm
可以看到运行结果如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/b3d95288f0735f9fbf461603cc15b22e.jpg)
阅读原文:异类的Javascript处理和解析URL的方式
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/b3d95288f0735f9fbf461603cc15b22e.jpg)
通常来说,我们使用Javascript处理和解析URL是使用location对象。在今天这个代码小技巧中,我们使用另外一个比较异类的方式处理和解析URL。
代码如下:
function parseURL(url){ var a = document.createElement('a'); a.href = url; return{ source: url, protocol: a.protocol.replace(':',''), host: a.hostname, port: a.port, query: a.search, params:(function(){ var ret ={}, seg = a.search.replace(/^\?/,'').split('&'), len = seg.length, i =0, s; for(;i<len;i++){ if(!seg[i]){continue;} s = seg[i].split('='); ret[s[0]]= s[1]; } return ret; })(), file:(a.pathname.match(/\/([^\/?#]+)$/i)||[,''])[1], hash: a.hash.replace('#',''), path: a.pathname.replace(/^([^\/])/,'/$1'), relative:(a.href.match(/tps?:\/\/[^\/]+(.+)/)||[,''])[1], segments: a.pathname.replace(/^\//,'').split('/') }; }
如何使用这个方法呢?简单如下:
var myURL = parseURL('http://abc.com:8080/dir/index.html?id=255&m=hello#top'); myURL.file;// = 'index.html' myURL.hash;// = 'top' myURL.host;// = 'abc.com' myURL.query;// = '?id=255&m=hello' myURL.params;// = Object = { id: 255, m: hello } myURL.path;// = '/dir/index.html' myURL.segments;// = Array = ['dir', 'index.html'] myURL.port;// = '8080' myURL.protocol;// = 'http' myURL.source;// = 'http://abc.com:8080/dir/index.html?id=255&m=hello#top'
GBdebug在线调试唯一地址:http://www.gbtags.com/gb/debug/c8946680-fb7f-4a2b-8cb7-9c81b420a74a.htm
可以看到运行结果如下:
![](https://oscdn.geek-share.com/Uploads/Images/Content/202005/05/b3d95288f0735f9fbf461603cc15b22e.jpg)
阅读原文:异类的Javascript处理和解析URL的方式
相关文章推荐
- 异类的Javascript处理和解析URL的方式
- 异类的Javascript处理和解析URL的方式
- web开发小技巧:异类的Javascript处理和解析URL的方式
- Javascript与ASP.NET(一般处理程序)关于URL(get方式)传递中文乱码问题的解决方案
- Javascript与ASP.NET(一般处理程序)关于URL(get方式)传递中文乱码问题的解决方案
- PHP四种URL解析处理方式的例子
- ios开发中,关于javascript直接调用oc代码而非通过改变url回调方式
- Magento系统Url地址解析方式
- javascript 分析url处理搜索参数
- JavaScript处理解析JSON数据过程详解
- [libexpat]_[XML处理]_[C/C++使用libexpat库以数据流(SAX模型)的方式读取(解析)大XML文件]
- Python3之Django Web框架URL匹配、反向解析及部分错误处理
- javascript两种声明函数的方式的一次深入解析
- JavaScript解析URL参数示例代码
- javascript 解析url的search方法
- JavaScript解析URL参数示例代码
- java使用HttpURLConnection检索网站时403错误处理方式
- javascript 解析url参数(转)
- javascript如何拼接对象属性到url/url如何把参数解析成对象???
- javascript处理url特殊字符总结