配列内の文字列検索としてindexofを使う方法が結構簡単です。
しかし、IE8以前ではindexof使えないみたいですね……
自分IE9で確認作業していたのですが、XPユーザーからjavascriptエラーが出るよと言われ…調べてみたらわかりました。
対策はこちらのを参考にしました。
とりあえずIEの場合は上のほうに以下の関数を定義すればOK
[javascript]
if(!Array.prototype.indexOf){
Array.prototype.indexOf = function(target,index){
//indexが数値かどうかの判断
if(isNaN(index)){
index = 0;
}
for(var i = index; i < target.length; i++){
if(this[i] === target){
return i;
}
}
return -1;
}
}
[/javascript]
これでindexofで検索することができますし、さらにindexに数値を入れることで配列内のindex番目から検索することができ、配列内の同じ文言のカウントを取ることもできます。
この関数を使わないで使用するにはIE9からなのでまだまだこの対策は必要でしょうね……