2017-03-03 2 views
-3

OK voici donc mon tableau ...Vous parcourez un tableau en javascript?

var cars = new Array("Golf", "Audi", "Merc", "Mini"); 

J'essaie de simplement itérer à travers elle ... simple hein? errrr. J'ai essayé ...

for (var i=0; i < cars.lenght(); i++) { 
      document.write(cars[i]+ "<br />"); 
     } 

ainsi que ...

for (i=0; i < cars.lenght(); i++) { 
      document.write(cars[i]+ "<br />"); 
     } 

et même ...

int i = 0; 
for (i=0; i < cars.lenght(); i++) { 
      document.write(cars[i]+ "<br />"); 
     } 

Aussi je pourrais ajouter que je l'ai aussi essayé "i < cars.lenght; "(en omettant les parenthèses vides à l'appel de fonction). Aucun de ces travaux. Je sais que c'est vraiment basique alors ... quelqu'un peut-il me dire ce que je fais mal ?

+1

cars.lenght() devrait être 'cars.length' –

+1

Cette question a été causé par un problème qui ne peut plus être reproduit ou une erreur typographique simple. Alors que des questions similaires peuvent être sur le sujet ici, celui-ci a été résolu d'une manière peu susceptible d'aider les futurs lecteurs. Cela peut souvent être évité en identifiant et en inspectant de près le programme le plus court nécessaire pour reproduire le problème avant de le poster.1 –

+0

'length' est une propriété de Array et non une méthode, utilisez donc' length' – cyrix

Répondre

1

Vous pouvez utiliser Array#length

cars.length 

pour obtenir la valeur de longueur (s'il vous plaît regarder le t et il n'a pas besoin parens, parce qu'elle représente une valeur, pas une méthode).

1

Vous avez une faute de frappe - .lenght devrait être .length :) Vous pouvez également essayer ce format

cars.forEach(function(car) { 
     //output each car 
     document.write(car+ "<br />"); 
    }) 

Hope this helps

Dylan

+1

document.write (voiture + "
"); –

+0

Merci pour les réponses rapides les gars. Insight que la longueur est une propriété et une technique d'itération alternative. – HiSulu

+0

Je vais écrire une centaine de fois ... arrrrrrrrrrrrrrrrrrrrrrrrr !! – HiSulu

0

length est pas un function. il est un property tient la longueur du tableau

var cars = new Array("Golf", "Audi", "Merc", "Mini"); 
 
for (var i=0; i < cars.length; i++) { 
 
     document.write(cars[i]+ "<br />"); 
 
}

Sinon, je vous suggère d'utiliser

var cars = new Array("Golf", "Audi", "Merc", "Mini"); 
 
cars.map(function(x){document.write(x+"<br />")});

map est un function qui font l'itération pour vousPassez un callback function qui contient ce que vous voulez faire avec chaque article.

Un raccourci est également là pour function

var cars = new Array("Golf", "Audi", "Merc", "Mini"); 
 
cars.map(x => document.write(x+"<br />"));

+0

Vous devriez vraiment jeter un oeil à l'utilisation prévue de [' .map() '] (https: // developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map). Il ne doit pas simplement parcourir un tableau ... – Andreas

+0

S'il avait besoin d'un nouveau tableau avec des changements mutés, ce serait une bonne solution –