2010-11-01 3 views
1

J'ai un tableau que je veux trouver le numéro de la chaîne 'hello' dedans. Est-ce qu'il y a un moyen de faire ça?Y at-il un moyen en javascript pour savoir combien de fois une certaine chaîne est dans un tableau?

+0

Je ne comprends pas comment cette question est différente [de votre précédent] (http://stackoverflow.com/questions/4073157/can-you-use-javascript-search-on-an-array-as - bien-comme-une-chaîne). – user113716

+0

@patrick Je veux dire ceci dans le premier, mais je ne dois pas avoir spécifié assez bien parce que j'ai obtenu des réponses qui ne renvoyaient que l'emplacement du premier dans le tableau. Les réponses que j'ai eues sur celui-ci sont exactement ce que je voulais. – chromedude

+0

Vous pouvez envisager de supprimer celui-ci s'il n'exprime pas votre problème. : o) – user113716

Répondre

2
var count = 0; 
for(var i=0; i<myArray.length; i++) { 
    if(myArray[i] == 'hello') { 
     count++; 
    } 
} 
+0

ahh ... je n'ai pas pensé à cette option. Merci. – chromedude

2

En supposant qu'il est un tableau de chaînes,

var count = 0; 
for (var i = 0; i < stringArray.length; ++i) { 
    if (stringArray[i] == "hello") 
    ++count; 
} 
0

Et maintenant quelque chose de complètement différent fonctionnel:

var count = stringArray.filter(function(x) { return x == "hello" }).length

0
var arr=['no','hello',2,true,false,'hello','true','hello']; 
if(arr.indexOf){ 
    var ax= -1, count= 0; 
    while((ax= arr.indexOf('hello', ax+1))!= -1)++count; 
} 
alert(count) 
0

Ou

var count = stringArray.reduce(function(a,b){ return (b=='hello')?a+1:a},0) 
Questions connexes