欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

js解析url query_js如何解析url

发布时间:2025/3/21 编程问答 32 豆豆
生活随笔 收集整理的这篇文章主要介绍了 js解析url query_js如何解析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

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('htt p:/ /abc.com:8080/dir/inde x.h tml?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;   // = 'htt p:/ /abc.com:8080/dir/index.h tml?id=255&m=hello#top'

总结

以上是生活随笔为你收集整理的js解析url query_js如何解析url的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。