Aggiungere un nuovo elemento dell'array a un oggetto JSON
Ho un oggetto in formato JSON che leggo da un file JSON che ho in una variabile chiamata teamJSON, che assomiglia a questo:
{"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"}]}
Voglio aggiungere un nuovo elemento all'array, come
{"teamId":"4","status":"pending"}
per finire con
{"theTeam":[{"teamId":"1","status":"pending"},{"teamId":"2","status":"member"},{"teamId":"3","status":"member"},{"teamId":"4","status":"pending"}]}
prima di scrivere di nuovo nel file. Qual è un buon modo per aggiungere il nuovo elemento? Mi sono avvicinato, ma tutti i doppi apici sono stati sfuggiti. Ho cercato una buona risposta su SO ma nessuna copre questo caso. Qualsiasi aiuto è apprezzato.
109
3
JSON è solo una notazione; per fare il cambiamento vuoi
parse
in modo da poter applicare i cambiamenti a un JavaScript Object nativo, poistringify
di nuovo a JSONSe vuoi aggiungere all'ultima posizione allora usa questo:
Se volete aggiungere alla prima posizione allora usate il seguente codice:
Chiunque voglia aggiungere in una certa posizione di un array provi questo:
Il blocco di codice qui sopra aggiunge un elemento dopo il secondo elemento.
Per esempio qui c'è un elemento come il pulsante per aggiungere un articolo al carrello e gli attributi appropriati per salvare in localStorage.
Dopo aver aggiunto l'oggetto JSON ad Array il risultato è (in LocalStorage):
[{"id":"99","nameEn":"Product Name1","price":"767","image":"1462012597217.jpeg"},{"id":"93","nameEn":"Product Name2","price":"76","image":"1461449637106.jpeg"},{"id":"94","nameEn":"Product Name3","price":"87","image":"1461449679506.jpeg"}]
dopo questa azione potete facilmente inviare i dati al server come List in Java
L'esempio completo di codice è qui
https://stackoverflow.com/questions/23554456/how-do-i-store-a-simple-cart-using-localstorage/37169851#37169851