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>
复制代码

 

1
2
3
4
5
6
7
8
9
为对象赋值:<br>     //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 @   iLincoln  阅读(2868)  评论(0编辑  收藏  举报
点击右上角即可分享
微信分享提示