Maison  >  Article  >  interface Web  >  Comment accéder aux objets parents à partir d'objets Javascript imbriqués ?

Comment accéder aux objets parents à partir d'objets Javascript imbriqués ?

Susan Sarandon
Susan Sarandonoriginal
2024-10-25 08:55:29375parcourir

How to Access Parent Objects from Nested Javascript Objects?

Comment obtenir des objets parents à partir d'objets Javascript imbriqués

En Javascript, les objets imbriqués représentent des structures de données hiérarchiques. Cependant, l'obtention d'une référence à l'objet parent à partir d'un objet enfant n'est pas directement prise en charge. Cela peut poser un défi lorsque vous tentez d'accéder à des données ou d'effectuer des opérations sur l'objet parent à partir de l'objet enfant.

Pour résoudre ce problème, nous pouvons exploiter le concept d'héritage de prototype en Javascript. En définissant une propriété parent au sein de l'objet enfant, nous pouvons établir un lien vers l'objet parent et accéder à ses propriétés et méthodes.

Considérons l'exemple suivant :

<code class="javascript">const main = {
  name: "main object",
  child: {
    name: "child object",
  },
};</code>

Dans cet exemple, l'objet enfant n'a pas de référence directe à son objet parent, main. Pour établir ce lien, nous étendons l'objet principal avec une méthode init :

<code class="javascript">main.init = function () {
  this.child.parent = this;
  delete this.init;
  return this;
};</code>

Au sein de la méthode init, nous attribuons l'objet principal comme propriété parent de l'objet enfant. Cela nous permet d'accéder aux propriétés et méthodes de l'objet parent depuis l'objet enfant :

<code class="javascript">main.init();
console.log(main.child.parent.name); // "main object"</code>

En utilisant l'héritage du prototype et en définissant une propriété parent, nous pouvons établir une référence à l'objet parent à partir de l'objet enfant, nous permettant d'accéder aux données et d'effectuer des opérations sur l'objet parent à partir de l'objet enfant.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn