如何使用JavaScript从URL读取GET数据?

如何使用JavaScript从URL读取GET数据?,第1张

如何使用JavaScript从URL读取GET数据?

下面的a代码可以工作,并且在

URLSearchParams
不可用的情况下仍然有用,但是它是在Javascript中没有本机解决方案的时候编写的。在现代浏览器或Node.js中,更喜欢使用内置功能。


function parseURLParams(url) {    var queryStart = url.indexOf("?") + 1,        queryEnd   = url.indexOf("#") + 1 || url.length + 1,        query = url.slice(queryStart, queryEnd - 1),        pairs = query.replace(/+/g, " ").split("&"),        parms = {}, i, n, v, nv;    if (query === url || query === "") return;    for (i = 0; i < pairs.length; i++) {        nv = pairs[i].split("=", 2);        n = depreURIComponent(nv[0]);        v = depreURIComponent(nv[1]);        if (!parms.hasOwnProperty(n)) parms[n] = [];        parms[n].push(nv.length === 2 ? v : null);    }    return parms;}

用法如下:

var urlString = "http://www.example.com/bar?a=a+a&b%20b=b&c=1&c=2&d#hash";    urlParams = parseURLParams(urlString);

它返回一个像这样的对象:

{  "a"  : ["a a"],       "b b": ["b"],         "c"  : ["1", "2"]     "d"  : [null]        }

所以

parseURLParams("www.mints.com?name=something")

{name: ["something"]}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5022062.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-15
下一篇 2022-11-15

发表评论

登录后才能评论

评论列表(0条)

保存