Maison >interface Web >js tutoriel >Comment récupérer des valeurs à partir d'objets profondément imbriqués à l'aide de chemins de chaînes ?

Comment récupérer des valeurs à partir d'objets profondément imbriqués à l'aide de chemins de chaînes ?

Barbara Streisand
Barbara Streisandoriginal
2024-10-24 23:30:30304parcourir

How to Retrieve Values from Deeply Nested Objects Using String Paths?

Récupération de valeurs d'objets profondément imbriquées avec un chemin de chaîne

Problème :

Recherche d'une fonction qui récupère des valeurs de valeurs profondément imbriquées objets en parcourant un chemin de chaîne représentant la structure imbriquée. Par exemple :

<code class="javascript">var obj = {
  foo: { bar: 'baz' }
};
// Retrieve obj.foo.bar's value with the string "foo.bar"
getValue(obj, "foo.bar");</code>

Solution :

La solution suivante parcourt efficacement les objets imbriqués à l'aide du chemin de chaîne fourni :

<code class="javascript">function getValue(obj, path) {
  var pathParts = path.split('.');
  for (var i = 0; i < pathParts.length; i++) {
    obj = obj[pathParts[i]];
  }
  return obj;
}</code>

Explication :

  1. Le chemin de la chaîne est divisé en un tableau de clés d'objet (dans notre exemple, ["foo", "bar"]).
  2. Nous itérons à travers le tableau, en récupérant la valeur associée à chaque clé.
  3. Le résultat final représente la valeur au chemin fourni.

Exemple :

<code class="javascript">var obj = {
  foo: { bar: 'baz' }
};
console.log(getValue(obj, "foo.bar")); // Output: "baz"</code>

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