JS URL Parse

转载 2015年11月19日 17:02:33
<script>  
/** 
*@param {string} url 完整的URL地址 
*@returns {object} 自定义的对象 
*@description 用法示例: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' 
*/  
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');  
var myURL = parseURL('http://localhost:8080/test/mytest/toLogina.ction?m=123&pid=abc');  
alert(myURL.path);  
alert(myURL.params.m);  
alert(myURL.params.pid);  
</script>
 

Web编程之一 urlparse

Web编程之一 urlparse urldefrag(url) # 将url分解成去掉fragment的新url和去掉的fragment的二元组 #return tuple(defragmented...
  • kittyboy0001
  • kittyboy0001
  • 2014年03月19日 20:06
  • 2545

Node.js之http模块、url模块菜鸟级理解

Node.js之http模块、url模块学习理解
  • ganyingxie123456
  • ganyingxie123456
  • 2017年03月22日 23:10
  • 225

Python之美[从菜鸟到高手]--urlparse源码分析

urlparse是用来解析url格式的,url格式如下:protocol :// hostname[:port] / path / [;parameters][?query]#fragment,其中;...
  • yueguanghaidao
  • yueguanghaidao
  • 2013年11月17日 22:41
  • 6284

Node.js url.parse()

url.parse()可以将一个完整的URL地址,分为很多部分,常用的有:host、port、pathname、path、query。var http = require("http"); var u...
  • zhongshijun521
  • zhongshijun521
  • 2017年03月03日 15:12
  • 954

js日期格式化器,format,parse

js日期格式化器,format,parse
  • zhang_7150
  • zhang_7150
  • 2015年11月24日 11:19
  • 976

spark在那里指定master URL呢?

14/05/30 16:04:23 ERROR UserGroupInformation: PriviledgedActionException as:jnleec (auth:SIMPLE) cau...
  • jiandong3471
  • jiandong3471
  • 2014年08月11日 22:58
  • 1886

Python urlparse模块解析URL下载

发现一个很好的学习Python的地方。一、urlparse模块功能介绍urlparse模块会将一个普通的url解析为6个部分,返回的数据类型都是元组。同时,它还可以将已经分解后的url再组合成一个ur...
  • d_0xff
  • d_0xff
  • 2016年07月12日 09:41
  • 2371

Hive函数之parse_url

parse_url(url, partToExtract[, key]) - extracts a part from a URL 解析URL字符串,partToExtract的选项包含[HOS...
  • xiaolang85
  • xiaolang85
  • 2013年04月19日 11:10
  • 8021

Web编程之一 urlparse

Web编程之一 urlparse urldefrag(url) # 将url分解成去掉fragment的新url和去掉的fragment的二元组 #return tuple(defragmented...
  • kittyboy0001
  • kittyboy0001
  • 2014年03月19日 20:06
  • 2545

Android多媒体--访问网络上的Audio对应的M3U文件,实现网络音频流的播放

From:http://blog.csdn.net/swdrt/article/details/8902596
  • MaximusKiang
  • MaximusKiang
  • 2014年06月16日 22:32
  • 819
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:JS URL Parse
举报原因:
原因补充:

(最多只允许输入30个字)