2009-07-21 2 views
4

location.searchを見るとき、クエリパラメータを取得してオブジェクトリテラルにする最も良い方法は何ですか?このように見えるオブジェクトリテラルである私が羽目になるしたいのですがどのようなURLクエリパラメータをオブジェクトリテラルに取得するにはどうすればよいですか?

http://foo.com?nodeId=2&userId=3&sortOrder=name&sequence=asc

var params = { 
    nodeId : 2, 
    userId : 3, 
    sortOrder: name, 
    sequence: asc 
} 

私はこのようになりますURLを持っていると言いますだから私はこのような何かをしたいと思います:

var url = location.search; 
url = url.replace('?', ''); 
var queries = url.split('&'); 
var params = {}; 
for(var q in queries) { 
var param = queries[q].split('='); 
params.param[0] = param[1]; 

を};

しかし、この行:

params.param[0] = param[1] 

がエラーを生成します。キー名がわからない場合、どのようにそれらのキーを反復処理しますか?

私たちはjQueryを使用していますが、これを行うプラグインはありますが、これをどのようにプログラムするかを理解したいと思います。

答えて

3

あなたはあまりにもregex approachを使用することができ、FYI

params[ param[0] ] = param[1] 

を使用する必要があります。

+0

Doh!それはまさに私が探していたものです。ありがとう! – Pete

関連する問題