Comment ajouter un nouvel attribut (élément) à un objet JSON en utilisant JavaScript?
javascript
json
bleuâtre
la source
la source
a
est JSON,a.s
comme vous venez de le définir est une chaîne. Maintenant, vous essayez d'ajouter["subproperty"]
à une chaîne. Comprenez-vous maintenant pourquoi vous avez l'erreur?object["property"] = value;
JSON.stringify
.console.log
pas destiné à la sérialisation. Utilisezconsole.log(JSON. stringify(object))
.la source
Un objet JSON est simplement un objet javascript, donc avec Javascript étant un langage basé sur un prototype, tout ce que vous avez à faire est de l'adresser en utilisant la notation par points.
la source
merci pour ce post. Je veux ajouter quelque chose qui peut être utile.
Pour IE, il est bon d'utiliser
syntaxe car certains mots spéciaux dans IE peuvent vous donner une erreur.
Un exemple:
cela échoue dans IE, car " classe " est un mot spécial. J'ai passé plusieurs heures avec ça.
la source
Avec ECMAScript depuis 2015, vous pouvez utiliser Spread Syntax (… trois points):
Il vous permet d'ajouter des sous-objets:
le résultat serait:
Vous pouvez également fusionner des objets:
la source
Vous pouvez également utiliser à
Object.assign
partir deECMAScript 2015
. Il vous permet également d'ajouter des attributs imbriqués à la fois. Par exemple:Ps: cela ne remplacera pas l'objet existant avec les attributs attribués. Au lieu de cela, ils seront ajoutés. Cependant, si vous affectez une valeur à un attribut existant, elle sera remplacée.
la source
Étend plusieurs objets json (ignore les fonctions):
Se traduira par un seul objet json
la source
Vous pouvez également ajouter de nouveaux objets json dans votre json, en utilisant la fonction d' extension ,
Une très bonne option pour la fonction d'extension est la fusion récursive. Ajoutez simplement la vraie valeur comme premier paramètre (lisez la documentation pour plus d'options). Exemple,
la source
Vous pouvez également ajouter dynamiquement des attributs avec des variables directement dans un littéral d'objet.
Résulte en:
la source
Les usages
$.extend()
de jquery , comme ceci:J'espère que vous les servez.
la source