-3

重複の可能性:
JavaScript でクエリ文字列を解析する

文字列からオプション配列を作成したい。として配列を作成するにはどうすればよいですか

{
    width : 100, 
    height : 200
}

のような文字列から

'width=100&height=200'

そのような配列を作成することはありますか?

4

2 に答える 2

1

これを試して:

JSON.parse('{"' + decodeURI(myString.replace(/&/g, "\",\"").replace(/=/g,"\":\"")) + '"}')
于 2012-10-15T07:47:13.073 に答える
1

それは配列ではなく、オブジェクトです。多次元でもありません。

しかしとにかく、&セパレータで文字列を分割してから、=:で各アイテムを分割することができます。

var input = 'width=100&height=200',
    output = {},
    working = input.split("&"),
    current,
    i;

for (i=0; i < working.length; i++){
    current = working[i].split("=");
    output[current[0]] = current[1];
}

// output is now the object you described.

もちろん、これは入力文字列を検証せず、同じプロパティが複数回表示される場合には対応しません(その場合は値の配列を作成することをお勧めします)が、開始する必要があります。上記を関数にカプセル化するのは良いことですが、読者のための演習として残しておきます...

于 2012-10-15T07:48:33.620 に答える