如何在没有jQuery的情况下从JavaScript对象获取查询字符串? [英] How to get query string from JavaScript Object without jQuery?
本文介绍了如何在没有jQuery的情况下从JavaScript对象获取查询字符串?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在寻找jQuery.param()的无依赖实现.我正在尝试创建一个数组或对象的序列化表示形式,以适合在URL查询字符串或Ajax请求中使用,而无需使用jQuery.
I'm looking for an dependency-free implementation of jQuery.param(). I'm trying to create a serialized representation of an array or object, suitable for use in a URL query string or Ajax request, without using jQuery.
我搜索了一段时间,但每个人似乎都在使用$ .param()...
I searched for some time now, but everyone just seems to use $.param()...
提前谢谢!
推荐答案
I found the best and optimal way on How to get query string values using JavaScript. Checkout the below example to fetch the query string.
var queryString = window.location.search || '';
var keyValPairs = [];
var params = {};
queryString = queryString.substr(1);
if (queryString.length)
{
keyValPairs = queryString.split('&');
for (pairNum in keyValPairs)
{
var key = keyValPairs[pairNum].split('=')[0];
if (!key.length) continue;
if (typeof params[key] === 'undefined')
params[key] = [];
params[key].push(keyValPairs[pairNum].split('=')[1]);
}
}
上面脚本的用法
//url=http://stackoverflow.com/how-to-get-query-string-values-in-javascript?query=123&list=default
params['query'];
//Output ["123"]
params['list'];
//Output ["default"]
//Note: If the query string value is empty the method will return the value as empty string.
这篇关于如何在没有jQuery的情况下从JavaScript对象获取查询字符串?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文