一个JavaScript函数把URL参数解析成Json对象


Posted in Javascript onSeptember 24, 2014

问题:请编写一个JavaScript函数parseQueryString,它的用途是把URL参数解析为一个对象。
eg:var obj=parseQueryString(url);

创建对象的三种形式:
一:

var Person=new Object();
Person.name="Sun";
Person.age=24;

二:

var Person=new Object();
Person["name"]="Sun";
Person["age"]=24;

三:
对象字面量表达式

var Person={
name: "Sun",
age: 24
}

PS:
1、在这个例子中,比较适合使用第二种形式,向obj中添加元素
2、split("&") , 如果url只有一个参数的时候,没有“&”的时候,也不会报错,只会返回array[0]

function parseQueryString(url)
{
var obj={};
var keyvalue=[];
var key="",value=""; 
var paraString=url.substring(url.indexOf("?")+1,url.length).split("&");
for(var i in paraString)
{
keyvalue=paraString[i].split("=");
key=keyvalue[0];
value=keyvalue[1];
obj[key]=value; 
} 
return obj;
}
Javascript 相关文章推荐
JavaScript this 深入理解
Jul 30 Javascript
js 函数调用模式小结
Dec 26 Javascript
js 阻止子元素响应父元素的onmouseout事件具体实现
Dec 23 Javascript
innerHTML在IE中报错解决方案
Dec 15 Javascript
AngularJS Module方法详解
Dec 08 Javascript
Bootstrap CSS组件之分页(pagination)和翻页(pager)
Dec 17 Javascript
原生JS实现垂直手风琴效果
Feb 19 Javascript
Vue监听数据渲染DOM完以后执行某个函数详解
Sep 11 Javascript
优雅的使用javascript递归画一棵结构树示例代码
Sep 22 Javascript
详谈Object.defineProperty 及实现数据双向绑定
Jul 18 Javascript
解决Vue使用bus总线时,第一次路由跳转时数据没成功传递问题
Jul 28 Javascript
Openlayers绘制地图标注
Sep 28 Javascript
js监听鼠标点击和键盘点击事件并自动跳转页面
Sep 24 #Javascript
JavaScript设计模式之单例模式实例
Sep 24 #Javascript
JavaScript中实现异步编程模式的4种方法
Sep 24 #Javascript
JavaScript设计模式之观察者模式(发布者-订阅者模式)
Sep 24 #Javascript
JavaScript获取图片真实大小代码实例
Sep 24 #Javascript
再探JavaScript作用域
Sep 24 #Javascript
深入理解javascript原型链和继承
Sep 23 #Javascript
You might like
我的群发邮件程序
2006/10/09 PHP
PHP clearstatcache()函数详解
2010/03/02 PHP
PHP获取文件夹大小函数用法实例
2015/07/01 PHP
再谈PHP中单双引号的区别详解
2016/06/12 PHP
微信公众号实现会员卡领取功能
2017/06/08 PHP
Prototype 学习 工具函数学习($w,$F方法)
2009/07/12 Javascript
让你的博文自动带上缩址的实现代码,方便发到微博客上
2010/12/28 Javascript
提高NodeJS中SSL服务的性能
2014/07/15 NodeJs
分享28款免费实用的 JQuery 图片和内容滑块插件
2014/12/15 Javascript
jquery实现初次打开有动画效果的网页TAB切换代码
2015/09/06 Javascript
纯jQuery实现前端分页功能
2017/03/23 jQuery
Vue.js实现在下拉列表区域外点击即可关闭下拉列表的功能(自定义下拉列表)
2017/05/30 Javascript
React+react-dropzone+node.js实现图片上传的示例代码
2017/08/23 Javascript
了解ESlint和其相关操作小结
2018/05/21 Javascript
原生JS实现前端本地文件上传
2018/09/08 Javascript
JavaScript中Array方法你该知道的正确打开方法
2018/09/11 Javascript
[08:44]DOTA2发布会群星聚首 我们都是刀塔人
2014/03/21 DOTA
[50:28]LGD女子学院第三期 DOTA2复仇之魂教学
2013/12/24 DOTA
[59:36]2018DOTA2亚洲邀请赛 4.3 突围赛 Secret vs VG 第二场
2018/04/04 DOTA
关于你不想知道的所有Python3 unicode特性
2014/11/28 Python
python网络爬虫学习笔记(1)
2018/04/09 Python
Pytorch之view及view_as使用详解
2019/12/31 Python
python GUI库图形界面开发之PyQt5切换按钮控件QPushButton详细使用方法与实例
2020/02/28 Python
Python计算矩阵的和积的实例详解
2020/09/10 Python
KELLER SPORTS荷兰:在线订购最好的运动产品
2020/10/13 全球购物
为什么UNION ALL比UNION快
2016/03/17 面试题
日语求职信范文
2013/12/17 职场文书
房产委托公证书
2014/04/08 职场文书
《云房子》教学反思
2014/04/20 职场文书
设计专业自荐信
2014/06/19 职场文书
爱护公共设施的标语
2014/06/24 职场文书
工厂门卫的岗位职责
2014/07/27 职场文书
2019通用版导游词范本!
2019/08/07 职场文书
Redis可视化客户端小结
2021/06/10 Redis
关于Mybatis中SQL节点的深入解析
2022/03/19 Java/Android
搭建zabbix监控以及邮件报警的超级详细教学
2022/07/15 Servers