2016-12-14 32 views
0

私は長い文字列を検索してより小さい文字列が含まれているかどうかを調べる検索機能を作成しようとしています。私は両方の文字列をパラメータとして関数に渡します。これは私のコードです:Javascript Search Function

var search = function(wordToFind, stringToSearch) { 
    for (var a = 0; a<stringToSearch.length; a++) { 
    if(wordToFind.substring(0,wordToFind.length).toLowerCase()===stringToSearch.substring(a,a+wordToFind.length).toLowerCase()) { 
      return true; 
     } else { 
     return false; 
     } 
     } 
    } 

私は "hello"を渡すとtrueを返しますが、他の単語の組み合わせを渡すとfalseを返します。誰かが助けてください/理由を説明できますか?

+1

あなたは、文字列は、使用することができます 'indexOf'方法を持っていることをご存知でしたか? –

+0

ああ、 'wordToFind.substring(0、wordToFind.length)'は単に 'wordToFind'と書くことができます –

+0

indexOfメソッドとは何ですか?申し訳ありません、私はコーディングにかなり新しいです! – Max

答えて

0

これは、ES6 includesメソッドで実行できます。文字列が別の文字列内に見つかった場合はtrueを返します。

const string = 'sarasa'; 
 
const subString = 'rasa'; 
 
const anotherString = 'foo'; 
 

 
console.log(string.includes(subString)); 
 
console.log(string.includes(anotherString));