location的search操作——解析url字符串,返回包含所有参数的一个对象
2015-08-10 16:39
701 查看
function getSearchObj(){ var qs = location.search.length>0 ? location.search.substr(1):'', args = {}, items = qs.length>0 ? qs.split('&'):[], item = null,name = null,value = null,i = 0,len = items.length; for(i = 0;i < len; i++){ item = items[i].split('='); name = decodeURIComponent(item[0]); value = decodeURIComponent(item[1]); if(name.length){ args[name] = value; } } return args; }
url
http://127.0.0.1:8020/suzhou/810.html?a=3&b=3&c=66
结果
object {a: “3”, b: “3”, c: “66”}
利用了几次三元运算,很精巧的减少了代码量,并且同时申明了这么多变量,学习了。
此外一般连接中的search内容,都被编码过,所以需要用decodeURIComponent函数来解码。
不足之处
url
http://127.0.0.1:8020/suzhou/810.html?a=3&b=3&c=66&a=4
则返回
object {a: "4", b: "3", c: "66"}
其中a出现了两次,但是只记录了一次。需要对函数进行改良。下次再说
相关文章推荐
- Bootstrap改变控件的高度和宽度问题
- css去掉使用bootstrap框架后打印网页时预览效果下的超链接
- code manager tools myeclipse10 svn插件安装及使用
- animate的{queue:false,duration:400}意思
- 基于Java的socket网络通信
- HDOJ-2003-求绝对值
- git创建与管理远程分支
- const 总结
- 页面跳转(二)
- C++ std::tr1::bind使用
- jQuery学习笔记之一——jQuery入门与基础核心
- 状压DP UVA 10817 Headmaster's Headache
- Objective—C中声明实例变量的两种方式
- Cacti的配置详解(一)——使用rrdtool绘图
- 再续tableView
- Android PopupWindow的使用和分析
- 树状数组
- 深入MountService、vold(四) 大容量存储和MountService的消息机制(and5.1)
- Vijos1935不可思议的清晨题解
- hpuoj1691 CZY追女孩