Boucler sur un tableau passé comme paramètre d'une fonction

Par bibi427, il y a 8 ans


Bonjour tout le monde,

Je découvre Javascript et je n'arrive pas à boucler sur un un tableau passé en paramètre d'une fonction.
Le but de l'exercice est simple, créer une function permettant de créer un tableau de longueur n, ainsi qu'une fonction permettant d'afficher ce tableau. Voici mon code.

var element = "demo"; var suite = setTab(5); getTab(suite, element); function setTab(nbr){ var i; var table = []; for( i = 0; i <= nbr-1; i++){ table[i] = prompt("Entrez un nombre"); } return table; } function getTab(tab, id){ var i; //return document.getElementById(id).innerHTML += tab[3]; //console.log(tab); for(i = 0; i < tab.length-1; i++ ){ return document.getElementById(id).innerHTML += tab[i]; } }

Dans la fonction getTab, lorsque je veux atteindre un élément du tableau précis je n'ai pas de problème, tab est bien un tableau indicé de 0 à 4 et je n'ai pas de problème pour afficher la valeur d'un certain indice.
Par contre avec le for, la fonction me renvoit tjs la valeur de l'indice 0;
Si je fais un coup de console.log avant la boucle que j'ai bien un tableau de longueur:5 mais je constate qu'il y a un prototype??? array

(5) ["5", "4", "7", "9", "8"] 0:"5" 1:"4" 2:"7" 3:"9" 4:"8" length:5 __proto__:Array(0)

Il semble donc que dans ma boucle, le tab.lenght-1 renvoie la longeur de ce prototype et non la longeur de mon tableau.
Que dois-je donc faire pour accéder à mon tableau.
Merci d'avance pour vos réponses

2 réponses

bibi427, il y a 8 ans

Merci! Effectivement cela marche bcp mieux comme cela :)
Et merci pour le lien je vais lire ça à mon aise :)
Bonne fin de week-end