在JS中获取没有值的URL参数[重复]
Posted
技术标签:
【中文标题】在JS中获取没有值的URL参数[重复]【英文标题】:Get URL parameters in JS that don't have values [duplicate] 【发布时间】:2016-03-05 14:04:51 【问题描述】:我正在尝试获取 URL 中的所有参数,即使它们没有使用 javascript 的值。
http://example.com/?Germany&France&Norway&Sweden
此 URL 包含 4 个参数以及一些国家/地区的名称。我想在 JavaScript 中获取这个国家列表,理想情况下是一个数组。有许多示例从键值参数中检索值,您必须在其中提供键并且某些正则表达式将返回值。
【问题讨论】:
到目前为止你尝试过什么? 你尝试了什么,你在哪里卡住了?你能告诉我们一些你已经做过的例子吗? 关于如何在 JS 中解析查询参数的例子可能有数不胜数。仅仅因为您没有值不会使键更加特别...var countries = location.search.substring(1).split("&");
【参考方案1】:
试试这个:
function noValParams(url)
var noValue = [];
var qp = x.split("?")[1];
[].forEach.call(qp.split("&"), function (inst)
if (inst.indexOf("=") == -1 || inst.indexOf("=") == inst.length - 1)
noValue.push(inst);
);
return noValue;
Live fiddle
用?
分割URL并取索引1。然后用&
分割剩余部分并检查=
的位置。它不应该存在,或者应该是最后一个索引。
此函数将返回一个值为空的参数数组。
【讨论】:
【参考方案2】:尝试使用split()
:
var my_string = "http://example.com/?Germany&France&Norway&Sweden";
var parameters = my_string.split('?')[1];
var params_array = parameters.split('&');
//["Germany","France","Norway","Sweden"]
希望这会有所帮助。
【讨论】:
以上是关于在JS中获取没有值的URL参数[重复]的主要内容,如果未能解决你的问题,请参考以下文章