js获取url参数值
今天说一下如何获取url参数值。
思路通过location的search就可以获取到url中问号后面的值。
字符串过滤到问号
通过split方法分割参数集合
循环赋值
匹配对应的参数值
返回值
封装的方法 function getUrlParams(name) { // 不传name返回所有值,否则返回对应值 var url = window.location.search; if (url.indexOf(\'?\') == 1) { return false; } url = url.substr(1); url = url.split(\'&\'); var name = name || \'\'; var nameres; // 获取全部参数及其值 for(var i=0;i<url.length;i++) { var info = url[i].split(\'=\'); var obj = {}; obj[info[0]] = decodeURI(info[1]); url[i] = obj; } // 如果传入一个参数名称,就匹配其值 if (name) { for(var i=0;i<url.length;i++) { for (const key in url[i]) { if (key == name) { nameres = url[i][key]; } } } } else { nameres = url; } // 返回结果 return nameres; } 实例例如:
const url = \'http://www.abc.com/test.php?id=1&from=index\'; var res = getUrlParams(); var res1 = getUrlParams(\'id\'); console.log(res); // [{id: "1"}, {from: "index"}] console.log(res1); // 1 写在最后这是一个比较简单的方法。