私はテキストで自分の名前を検索し、コンソールの同じ頻度を記録するjavascriptでプログラムを作っています。 私はまずテキストの各文字をチェックしていて、それが私の名前の最初の文字と一致するとき、私はhitsという配列に文字をプッシュする別のforループを使用します。文字列 "text"からの文字は、押す()。 この後、配列「ヒット」と文字列「myName」が等しいかどうかをチェックし、等しい場合は1つ増やします。 しかし、私のコードは動作していないと私はなぜ、私は非常に考えているが、すべてが無駄に行きました。助けてください。javascript、私の名前を検索
var text="abhishek apolo bpple abhishek",myName="abhishek",hits=[];
var count=0;
for(i=0;i<text.length;i++)
{
if(text[i]===myName[0])
{
for(j=i;j<(i+myName.length);j++)
{
hits.push(text[j]);
}
}
if(myName==hits)
{
hits=[];
count=count+1;
}
hits=[];
}
if(count===0)
console.log("Name not found!");
else
console.log(count);
正規表現はどうですか? –
文字列と配列を比較しているので 'if(myName == hits)'が渡されません。 – Teemu
には、 'indexOf'のような検索関数を使う代わりに、最初からやっている理由がありますか? – Kaddath