Maison > développement back-end > Golang > Comment parcourir des tableaux parallèles dans HTML/Modèle à l'aide de la fonction « index » ?

Comment parcourir des tableaux parallèles dans HTML/Modèle à l'aide de la fonction « index » ?

Barbara Streisand
Libérer: 2024-11-04 12:49:02
original
269 Les gens l'ont consulté

How to Iterate Through Parallel Arrays in HTML/Template using the `index` Function?

Itération de tableaux parallèles dans HTML/Modèle à l'aide d'un index

De nombreux scénarios de développement impliquent de travailler avec des tableaux parallèles, où deux tableaux ou plus ont la même taille et leurs éléments doivent être accessibles de manière synchronisée. Comprendre comment parcourir ces tableaux parallèles devient crucial dans de telles situations.

Question :

Comment l'index dans un bloc de plage peut-il être utilisé pour parcourir des tableaux parallèles en HTML /Modèle ?

Tentative échouée :

Ce code ne parvient pas à obtenir le résultat souhaité :

{{range $i, $e := .First}}$e - {{index .Second $i}}{{end}}
Copier après la connexion

Solution :

La clé du succès ici est d'exploiter la fonction d'index, une fonction de modèle global prédéfinie en HTML/Template. Il permet l'indexation du premier argument par les arguments suivants.

index   Returns the result of indexing its first argument by the following arguments. Thus index x 1 2 3 is, in Go syntax, x[1][2][3]. Each indexed item must be a map, slice, or array.
Copier après la connexion

Le code initial échoue car il ne tient pas compte de la réaffectation du point dans le bloc de plage. Pour accéder au point d'origine, nous pouvons utiliser une autre fonction de modèle prédéfinie :

When execution begins, $ is set to the data argument passed to Execute, that is, to the starting value of dot.
Copier après la connexion

Une version améliorée du code devient :

{{range $i, $e := .First}}$e - {{index $.Second $i}}{{end}}
Copier après la connexion

Approche alternative :

Envisagez une approche plus propre en définissant une fonction de modèle personnalisée appelée zip. Cette fonction prend plusieurs tranches en entrée et génère une tranche de paires, une pour chaque élément correspondant dans les tranches d'entrée. Il peut ensuite être utilisé dans le modèle pour simplifier le processus d'itération.

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