javascript:将URL的参数列表解析为一个对象

 1 <!doctype html>
 2 <html>
 3 <head>
 4 <meta charset="utf-8">
 5 <title>将URL的参数解析为一个对象</title>
 6 </head>
 7 
 8 <body>
 9 <script type="text/javascript">
10 function queryURL(url){
11     var arr1 = url.split("?");
12     var params = arr1[1].split("&");
13     var obj = {};//声明对象
14     for(var i=0;i<params.length;i++){
15         var param = params[i].split("=");
16         obj[param[0]] = param[1];//为对象赋值
17     }
18     
19     return obj;
20 }
21 var a = queryURL("http://www.baidu.com?name=javascript&keyword=word");
22 alert(a.name);
23 </script>
24 </body>
25 </html>

 

       为对象赋值:
     //nameX = param[0]; 不能用这种方式, //valueX = param[1]; //obj.nameX = valueX; 通常情况下这个可以定义对象的属性,但是现在属性名称是不定的,所以不能用这种方式 //var obj = {name:param[0],value:param[1]} //不能用这种方法,这种方法是把值付给name、value,每次循环就替换,最后object.name = key2;object.value=2;而我们要的是key2 = 2这样的类型; //obj.param[0] = param[1] //也不能用这种方式,会提示myO为空或不是对象 //obj.name = "张三"; 这样的就可以,这种是直接量语法 //alert(obj["name"]);

  

 

源码下载:http://pan.baidu.com/s/1mg2XIVu

posted @ 2014-04-23 07:47  iLincoln  阅读(2864)  评论(0编辑  收藏  举报