問題:請編寫一個JavaScript函數parseQueryString,它的用途是把URL參數解析為一個對象。
eg:var obj=parseQueryString(url);
創建對象的三種形式:
一:
1
2
3
|
var Person= new Object(); Person.name= "Sun" ; Person.age=24; |
二:
1
2
3
|
var Person= new Object(); Person[ "name" ]= "Sun" ; Person[ "age" ]=24; |
三:
對象字面量表達式
1
2
3
4
|
var Person={ name: "Sun" , age: 24 } |
PS:
1、在這個例子中,比較適合使用第二種形式,向obj中添加元素
2、split("&") , 如果url只有一個參數的時候,沒有“&”的時候,也不會報錯,只會返回array[0]
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
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; } |