1

私は次のサンプルコードを持っています

   var obj = { a: {b:1, c:3 }, d :{f:5}}
        var string = "";
        for(var key in obj){
            for(var subkey in obj[key]){
             string += subkey + "="+ obj[key][subkey] + "&";
             //for last iteration "&" should not be added.
         }
    }
   console.log(string);

出力は

b=1&c=3&f=5& 

必要な出力

b=1&c=3&f=5
4

4 に答える 4

9

別のアプローチは次のとおりです。

var obj = { a: {b:1, c:3 }, d :{f:5}},
  array = [];
for(var key in obj){
  for(var subkey in obj[key]){
    array.push(subkey + "="+ obj[key][subkey]);
  }
}
console.log(array.join('&'));
于 2013-05-22T09:55:43.313 に答える
4

URL のクエリ部分を作成している場合は、ここで提供されているソリューションを使用します: How to create query parameters in Javascript?

そうでない場合は、エンコーディング部分を削除してください:)

関連コードのコピー:

// Usage:
//   var data = { 'first name': 'George', 'last name': 'Jetson', 'age': 110 };
//   var querystring = EncodeQueryData(data);
// 
function EncodeQueryData(data)
{
   var ret = [];
   for (var d in data)
      ret.push(encodeURIComponent(d) + "=" + encodeURIComponent(data[d]));
   return ret.join("&");
}
于 2013-05-22T09:57:03.690 に答える