2017-12-17 12 views
1

私の質問は非常に簡単ですが、私はJSONとlocalStorageでは動作しません。だから、私はオブジェクトとループを返す関数を持っています。これは、関数をn回実行し、n個のオブジェクトを作成します。localStorageにオブジェクトを追加する。 JSON

function result(){ 
    //some other functions 
    let finalObj = { 
      "Потяг №" : getTrainNumber(), 
      "Пункт відправлення" : cities[randomCity_A], 
      "Пункт прибуття" : cities[randomCity_B], 
      "День тижня" : getDepartureDay(), 
      "Відправлення" : mergedDepartureTime(), 
      "Вартість" : getTicketPrice() 
     }; 

    return finalObj; 
} 

var firingCount = prompt('Trains count', 10); 
    for(var i = 0; i < firingCount; i++) { 
    console.log(result()); 

    let serialObj = JSON.stringify(result()); 
    localStorage.setItem("myKey", serialObj); 
} 

どのように私はのlocalStorageで作成されたすべてのオブジェクトを(それが唯一の1 finalObjを節約できます)保存することができ、と私は他の.jsonファイル内のすべてのオブジェクトを保存することができた場合、どのようにそれを行うには?ありがとうございました。

+0

は配列にすべてのオブジェクトを押し込み、その後のlocalStorageにその配列を保存します。 – 11thdimension

答えて

2

オブジェクト(serialObj)を同じキー(myKey)に何度も設定しています。そのため、キーは最後のオブジェクトだけを保持しています。

次のようなユニークなキーを作成しよう:

var firingCount = prompt('Trains count', 10); 
for(var i = 0; i < firingCount; i++) { 
    console.log(result()); 

    let serialObj = JSON.stringify(result()); 
    localStorage.setItem("myKey" + i, serialObj); // create unique key by appending i to "myKey". 
} 
+0

それは動作します!ありがとうございました。 –

+0

@АртемМирошниченко、あなたは大歓迎です。助けていただければ答えを受け入れてください.....ありがとうございます。 – Mamun

関連する問題