0

ユーザーが選択したフィールドに基づいて、JavaScript オブジェクト表記内に値を格納しようとしています。コンマで区切られた文字列に値を格納することができました.Bt検索しようとしている用語が配列の場合、配列であるため[オブジェクトオブジェクト]が返されます. その配列内のすべての項目をコンマで区切られた変数に格納する方法を知りたいです。たとえば、ここで「時間」を選択すると、2012 年 12 月 9 日 1 日が返されます。

この例では、findProps 関数があります。引数 entityCount を findProps("entityCount", data) 内に指定すると、適切な戻り値の型が 50 として取得され、提供された json に基づいています。Bt追加すると、findProps( "Time"、data);、それは配列であるため、それらの配列内の値ではなく[オブジェクト、オブジェクト]を返し、その配列内のすべての値を表示したい(のようにDec 9, 1, 2012)また、各配列内のキーは異なる可能性があり、配列の深さも異なる可能性があります。ここでは静的な例を使用しています。

私が到達した部分は、配列でない場合は値を返しますhttp://jsbin.com/obehog/3/edit

私がやろうとしている別の例がありますhttp://jsbin.com/obehog/4/edit bt 再帰が苦手なので、これで行き詰まっています.

配列の深さは変わる可能性があり、それぞれの場合で同じではありません。そのため、ループを通過しても機能しません..

4

2 に答える 2

1

私があなたを正しく理解していれば、コードにはすべてのオブジェクトのプロパティを配列に書き込む追加の関数が必要です。私のソリューションを見てください: http://jsbin.com/obehog/6/edit#source

于 2012-07-10T06:51:45.817 に答える
0

オブジェクト(文字列、配列、その他のオブジェクトを含む)を文字列に「シリアル化」したいというあなたの欲求を私が理解しているなら。そのため、オブジェクトを繰り返し処理し、その一部をシリアライズするだけです。

クイック、ダーティ、再帰的: http://jsfiddle.net/AwhfV/1/

必要に応じて変更するだけです

于 2012-07-10T06:52:55.410 に答える