Donc, j'ai 3 champs de saisie de texte, l'entrée que je stocke dans le stockage local en tant que réseau d'objets.
On dirait que: Je dois pouvoir supprimer n'importe quelle entrée que je choisis et mettre à jour le stockage local. P> Après JSON.PARSE, je reçois un objet JavaScript, pas déployer.
Si j'utilise supprimer [x], il laisse NULL - P> [null, {name: " Name2", description: "Description2", comment: "Comment2"},â¦]
0: null
1: {name: " Name2", description: "Description2", comment: "Comment2"}
2: {name: " Name3", description: "Description3", comment: "Comment3"}
5 Réponses :
Au lieu de mutater le tableau, filtrez-le: Exemple:
const newArr = [...].filter(o => o.name != <name you want to remove>)
Vous avez plusieurs options pour faire cela.
Option 1: . Splice () P>
La méthode de l'épissure () modifie le contenu d'un tableau en supprimant ou en remplaçant les éléments existants et / ou en ajoutant de nouveaux éléments en place. P> blockQuote>
p>
const data = [{name: "Name1", description: "Description1", comment: "Comment1"}, {name: " Name2", description: "Description2", comment: "Comment2"}, {name: " Name3", description: "Description3", comment: "Comment3"}]; console.log(data.filter(item => item && item.name !== 'Name1'))
Si vous souhaitez supprimer des éléments d'un tableau, vous utilisez une méthode de tableau si vous souhaitez supprimer l'élément de l'objet p> alors Newarray est sans valeur null p> p>
Assurez-vous toujours d'obtenir les valeurs, la matrice mise à jour et la définir à nouveau. J'espère que cela aide.
const data = [ { name: " Name1", description: "Description1", comment: "Comment1" }, { name: " Name2", description: "Description2", comment: "Comment2" }, { name: " Name3", description: "Description3", comment: "Comment3" } ]; const setLS = arr => localStorage.setItem("my_data", JSON.stringify(arr)); const getLS = () => JSON.parse(localStorage.getItem("my_data")); const removeItemLS = obj => { const current = getLS(); setLS(current.filter(item => item.name !== obj.name)); }; setLS(data); getLS(); // (3) [{â¦}, {â¦}, {â¦}] removeItemLS({ name: " Name2" }); getLS(); // (2) [{â¦},{â¦}]
Comment le supprimez-vous?