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)
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)
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!