Location之getParameter

纠结问题:

有时候需要在页面获取Location中参数,Google到了不少结果,看了下代码,没有找到很满意的。

毛委员说 自己动手 丰衣足食 还是自己写个吧


URL分析:

uri breakdown

敬上代码:

/**
 * location.js
 * A location search access API
 * Copyfree and USE AT YOUR OWN RISK
 * Author: Fuwei Chin
 * Date: Thu, 24 Oct 2013 01:41:09 GMT 
 */
(function(window,undefined){
	var ArrayForEach=Array.prototype.forEach||function(fn, sc){
		var a=this,l=a.length|0,i;
		for(i=0;i<l;i+=1)fn.call(sc, a[i], i, a);
	};
	var ObjectGetOwnPropertyNames=Object.getOwnPropertyNames||function(o) {
		var a=[],p;
		for(p in o)if(o.hasOwnProperty(p))a.push(p);
		return a;
	};
	var location=window.location,params={};
	ArrayForEach.call(location.search.substr(1).split("&"),function(slice,index){
		var p=slice.split("="),name=decodeURIComponent(p[0]),value=decodeURIComponent(p[1]);
		params.hasOwnProperty(name)?params[name].push(value):params[name]=[value];
	});
	function getParameter(name){return params.hasOwnProperty(name)?params[name][0]:null;}
	function getParameterValues(name){return params.hasOwnProperty(name)?params[name]:[];}
	function getParameterNames(){return ObjectGetOwnPropertyNames(params);}
	function getParameterMap(){return params;}
	location.getParameter=getParameter;
	location.getParameterValues=getParameterValues;
	location.getParameterNames=getParameterNames;
	location.getParameterMap=getParameterMap;
})(window);



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值