Maison >interface Web >js tutoriel >Comment puis-je stocker des données non-chaînes dans HTML5 LocalStorage/SessionStorage ?
Comment stocker des non-chaînes dans HTML5 LocalStorage/SessionStorage
Contrairement aux types et tableaux primitifs, stocker des objets JavaScript directement dans le stockage HTML5 entraîne leur conversion en chaînes. Cette limitation a fait l'objet de débats, entraînant une confusion parmi les développeurs.
Selon la spécification HTML5 Web Storage, la méthode setItem() s'attend à ce que les paires clé/valeur soient des chaînes. Pour surmonter cette limitation, envisagez la solution de contournement suivante :
Sérialisation et désérialisation JSON
Pour stocker un objet dans le stockage HTML5, convertissez-le en chaîne JSON à l'aide de JSON.stringify (). Lors de la récupération, analysez la chaîne JSON dans un objet à l'aide de JSON.parse().
var testObject = { 'one': 1, 'two': 2, 'three': 3 }; // Put the object into storage localStorage.setItem('testObject', JSON.stringify(testObject)); // Retrieve the object from storage var retrievedObject = JSON.parse(localStorage.getItem('testObject')); console.log('Retrieved object:', retrievedObject);
Exemple de sortie :
Retrieved object: { one: 1, two: 2, three: 3 }
En sérialisant l'objet avant stockage et en le désérialisant après la récupération, vous pouvez stocker et récupérer efficacement des objets JavaScript dans le stockage HTML5.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!