2016-04-25 6 views
0

Ich habe Array von ObjektbaumBestes Format von localstorage

var tree = [{ 
    "id": "1", 
    "name": "one", 
    "child": [], 
    }, { 
    "id": "2", 
    "name": "two", 
    "child": [{ 
     "id": "21", 
     "name": "twentyOne", 
     "child": [], 
     },{ 
     "id": "22", 
     "name": "twentyTwo", 
     "child": [], 
     }], 
    }, {{ 
    "id": "3", 
    "name": "three", 
    "child": [], 
    }, 
}]. 

Welches ist der beste Weg, Array von Objekten in localStorage zu speichern? Ist es besser, ein anderes Format zu verwenden?

Es gibt mehrere Methoden:

  • getItem
  • getAllItem
  • removeItem
  • saveItem

Aber es gibt Kinder Arrays von Objekten. Es bedeutet, dass ich rekursive Suche verwenden werde, um das notwendige Objekt zu finden.

+1

Betrachten Sie es als Zeichenfolge speichern mit 'JSON.stringify' .. –

+1

Es liegt wirklich an Ihnen. So oder so müssen Sie die gleiche Menge an Code schreiben, die die gleichen Dinge tun. Was Sie jedoch beachten sollten ist, dass LocalStorage Speicherplatz nicht unbegrenzt ist. –

+0

Um Reddy - ich benutze auch JSON.Stringify, danke. –

Antwort

0

Speichern Sie die Daten in LocalStorage als ein Array oder Array von einfachen Objekten, aber versuchen Sie es zu behalten DRY (wiederholen Sie nicht). Wenn Sie beispielsweise eine Liste von Personen haben, behalten Sie ein Array der Personen bei, behalten Sie jedoch keine separate Variable für die Anzahl.

Was Sie wollen, ist im Grunde ein "Zustand". Solange Sie es minimal halten, wird es Ihnen gut gehen. Dann können Sie lodash oder underscore verwenden, um Elemente aus diesem Array zu finden, zusammenzuführen, hinzuzufügen oder zu entfernen.