En JavaScript, les objets imbriqués sont couramment utilisés pour organiser les données de manière hiérarchique. Cependant, récupérer l'objet parent d'un objet enfant imbriqué peut être un peu délicat.
Considérez l'exemple suivant :
const obj = { subObj: { foo: 'hello world' } }; const s = obj.subObj;
La variable s fait désormais référence à l'objet subObj. Est-il possible d'obtenir une référence à l'objet obj (le parent) depuis s ?
Non, un objet imbriqué n'a pas d'accès direct à son parent.
Ce concept peut être illustré à l'aide d'un autre exemple :
const main = { name: "main object", child: { name: "child object" } };
Bien que main puisse accéder à child.name, child ne peut pas accéder à main.name ou à toute autre propriété de main.
Solution utilisant une fonction
Pour surmonter cette limitation, une fonction personnalisée peut être utilisée pour initialiser l'objet enfant avec une référence à son parent :
const main = { name: "main object", child: { name: "child object" }, init() { this.child.parent = this; delete this.init; return this; } }.init();
Maintenant, main.child.parent .name donne accès à la propriété name de l'objet principal.
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!