2012-10-20 4 views
0

J'ai créé une base de données (scriptDB) et stocké des informations (plus de 40 propriétés d'environ 600 personnes-étudiants-).Ajouter une nouvelle propriété à un objet stocké avec scriptDB

var obj = { 

alumne_id: email, 

alumne_ordre: nomsencer_ordre, 

alumne_timestamp: {created: new Date(). getTime(), changed:'', editor: 'unedited'}, 

alumne_nom: {nom: nomREAD, cognom1: cognom1READ, cognom2: cognom2READ, cognoms: cognomsREAD, nomsencer: nomsencerREAD}, 

(...) 

} 

J'ai emmagasiné cet objet dans ma base de données:

var stored = db.save(ob); 

I ainsi défini, les propriétés des objets et ont ma mémoire. Cela fonctionne parfaitement et mettre à jour les données, par exemple, changer "alumne_nom.nom" à une nouvelle valeur: 'Joana'

Maintenant je veux ajouter de nouvelles propriétés à tout ou partie de ces objets (étudiants).

Le problème est que je peux ajouter une propriété comme

newproperty1 

avec:

stored.newproperty1 = '50 ' 

Mais je ne peux pas faire:

stored.newproperty1.sub1 

stored.newproperty1.sub2 

stored.newproperty1.sub3 

Est-ce que quelqu'un sait comment je peux ajouter ces sous-propriétés?

Répondre

3

Pour ajouter des "sous-propriétés", vous devez d'abord définir la propriété. Vous pouvez le faire en définissant un objet vide, par ex.

stored.newproperty1 = {}; 
//then all subs should work 
stored.newproperty1.sub1 = 10; 

Vous pouvez déjà passer les définitions de sous-marins sur les accolades comme vous le faites avec l'objet ainsi:

stored.newproperty1 = {sub1:10, sub2:20, etc:'value'}; 
+0

Parfait. Merci Henrique (muito obrigado) – sergicurtu

+1

@sergicurtu De rien. Puisque vous êtes nouveau ici, vous devriez marquer une réponse comme acceptée quand vous sentez que vous en avez une bonne. La fonctionnalité intéressante d'un autre Stackoverflow est le vote;) –

Questions connexes