如何在没有jQuery的情况下从JavaScript对象获取查询字符串? [英] How to get query string from JavaScript Object without jQuery?

查看:141
本文介绍了如何在没有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屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆