2016-06-14 9 views
0

配列の値を可変文字列に一致させようとしています。Javascript-変数の配列から部分文字列への値の一致

var array = ['Potato', 'Cheese', 'Bikini', 'Truck', 'Express']; 
var something = 'Potato Thief'; 

私は私の関数は変数が配列で「ポテト」を含んでいるので、「真」を返すしたいと思います: だから、もし例えば、私は、配列や変数を持っています。助けのための

私は現在、現時点では、このような何かを持っている...

if(array.indexOf(something)!=-1) 
{ 
true; 
} 
else 
{ 
false; 
} 

ありがとう!あなたはそれ

return array.indexOf(something)!=-1 
+0

あなたは、特定の問題を抱えていますか?また、値を返す場合は、その前に 'return'キーワードを含める必要があります。例えば。 '真実を返す '。最後に、if(/ * * /)の代わりにtrueを返します。 } else {return false; } '、単にif(/ * * /){trueを返す; } return false; '、関数はreturnキーワードで終了するため、戻り値の1つにしか到達しません。 –

+0

こんにちはええ、indexOfを実行すると、私は 'Potato Thief'のために偽を取得します。しかし、 'ポテト'のための真実。私はそれが文字列の2番目の部分のb/cは配列内にないと思う。 – Rob

+0

ああ!私はそれを誤解している。配列内の文字列が指定された文字列内にあるかどうかを確認するには、その文字列を逆にする必要があります。今書かれているように、配列に「Potato Thief」が含まれているかどうか調べています。 –

答えて

2

はこれを試してみてください。配列をループし、配列要素を指定された文字列に一致させる必要があります。

var array = ['Potato', 'Cheese', 'Bikini', 'Truck', 'Express']; 
     var something = 'Potato Thief'; 


     for (var i = 0; i < array.length; i++) { 

      if(something.search(array[i]) == 0){ 
       console.log(true); 
      }else{ 
       console.log(false); 
      } 
     } 
1

ため、if文を必要としない

1

私は以下のようにします。

var array = ['Potato', 'Cheese', 'Bikini', 'Truck', 'Express'], 
 
something = 'Potato Thief', 
 
    test = array.some(e => something.includes(e)); 
 
console.log(test)

関連する問題