Maison > interface Web > js tutoriel > Comment convertir une chaîne de notation par points en référence d'objet en JavaScript ?

Comment convertir une chaîne de notation par points en référence d'objet en JavaScript ?

Barbara Streisand
Libérer: 2024-12-17 13:25:13
original
584 Les gens l'ont consulté

How to Convert a Dot Notation String to an Object Reference in JavaScript?

Comment convertir une chaîne JavaScript en notation par points en une référence d'objet

À l'aide d'une ligne simple et élégante, il est possible de convertir une chaîne JavaScript en notation par points vers une référence d'objet. Voici comment :

'a.b.etc'.split('.').reduce(index, obj)
Copier après la connexion

où index est une fonction utilisée pour l'indexation.

Diviser la chaîne en un tableau

Avant d'effectuer la conversion, la chaîne de notation par points est divisée en un tableau à l'aide de la méthode split('.'). Par exemple, la chaîne 'a.b.etc' serait divisée en ['a', 'b', 'etc'].

Utilisation de la méthode de réduction pour l'indexation

La méthode de réduction est utilisée pour parcourir le tableau et indexer l'objet. L'accumulateur o représente l'objet actuel en cours d'indexation et i est l'élément actuel du tableau. La fonction index est appliquée à chaque élément, où elle renvoie o[i], la valeur indexée dans l'objet actuel.

Mettre le tout ensemble

Combiner la chaîne opérations de fractionnement et d'indexation, nous obtenons ce qui suit :

'a.b.etc'.split('.').reduce(function(o, i) { return o[i] }, obj)
Copier après la connexion

Cela renverra la valeur imbriquée, obj.a.b.etc, de l'original référence d'objet.

Remarque : Il existe des méthodes alternatives, mais cette one-liner offre élégance et simplicité.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal