2016-04-15 12 views
0

JavaScriptの大きなオブジェクトを繰り返しメモリに入れて、ネストされたjsonデータを生成し、dbに挿入する必要があります。オブジェクト構造は、このようなものです:javascriptオブジェクトを反復処理する最も効率的な方法は何ですか?

var obj = { 
    "30": { "7": { "date1": { "key1": "value1", "key2": "value2"}}}, 
    "29": { "8": { "date2": { "key1": "value1"}}}, 
    "28": { "6": { "date3": { "key1": "value1", "key2": "value2", "key3": "value3"}}} 
}; 

実際に私が

Object.keys(obj).map((number1) => { 
    const number1Obj = obj[number1]; 
    Object.keys(number1Obj).map((number2) => { 
     const number2Obj = number1Obj[number2]; 
     Object.keys(number2Obj).map((date) => { 
      const dateObj = number2Obj[date]; 
      console.log(number1); 
      console.log(number2); 
      console.log(date); 
      Object.keys(dateObj).map((key) => { 
       console.log(`   ${key}:${dateObj[key]}`); 
      }); 
     }); 
    }); 
    }); 

変更のネストレベルのオブジェクトを反復処理するために、このaproachを使用するオブジェクトとそのプロパティを超える反復のより効率的な方法はありますか? running example

+1

これはアプリのパフォーマンスのボトルネックですか、それともこの早すぎる最適化ですか?ほとんどの場合、わかりやすいコードを用意し、後で実際の問題に最適化を集中させる方がよいでしょう。 – Krease

+0

アドバイスをいただきありがとうございます。現在、問題はありませんが、私のコードを効率性の面で考えたがっています。 –

+0

パフォーマンスについて心配しているのであれば(なぜですか?)、 'for'ループは常により高速になります。 –

答えて

0

この回答は関連性がありますが、パフォーマンスの問題についてはわかりません。

Iterate through Nested JavaScript Objects

+0

ありがとうございますが、私の問題はパフォーマンスが反復ではない、私は最良の方法を探しています。 –