Javascript - сопоставление значений из массива в подстроку переменной

Я пытаюсь сопоставить значения из массива с переменной строкой. Так что, если, например, у меня есть массив и переменная:

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

Я хотел бы, чтобы моя функция возвращала «True», поскольку переменная включает в себя «Potato» в массиве.

В данный момент у меня есть что-то подобное ...

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

Спасибо за помощь!

 Rob14 июн. 2016 г., 02:57
Привет, да, когда я запускаю indexOf, я получаю ложное значение для 'Potato Thief'. Но это правда для «Картошка». Я думаю, что это б / к второй части строки не в массиве.
 Rob14 июн. 2016 г., 03:26
Не волнуйтесь. Хм, что-то. IndexOf (массив)! = - 1 тоже не работает ... Мне нужно как-то разделить / разделить строки?
 Rob14 июн. 2016 г., 20:39
Спасибо за помощь! Я понял. Сделал что-то вроде
 Brandon Anzaldi14 июн. 2016 г., 03:31
Вам нужно будет перебирать их. Что-то вроде решения Тамиры. Вы также можете использоватьArray.prototype.some() перебирать, пока не будет найдено совпадение, которое скажет вамесли есть совпадение, но не какое совпадение.
 Brandon Anzaldi14 июн. 2016 г., 02:35
У вас есть конкретные проблемы? Кроме того, если вы хотите вернуть значение, вы должны включитьreturn Ключевое слово перед этим. Например.return true;, Наконец, вместоif ( /* */ ) { return true; } else { return false; }можно просто сделатьif ( /* */ ) { return true; } return false;, так как функция будет выходить по ключевому слову return и достигнет только одного из возвратов.
 le_m14 июн. 2016 г., 05:41
Возможно, дубликатstackoverflow.com/questions/37647025/...
 Brandon Anzaldi14 июн. 2016 г., 03:03
Ой! Я неправильно это понял. Если вы хотите увидеть, находится ли строка в массиве в предоставленной строке, вам нужно изменить это. Как написано сейчас, вы ищете массив, чтобы увидеть, содержит ли он'Potato Thief', что это не так.

Ответы на вопрос(3)

а с заданной строкой

 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);
            }
        }   

вам не нужно заявление if для этого

return array.indexOf(something)!=-1

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

Ваш ответ на вопрос