Во-первых, я захватываю поисковый запрос, который пользователь ввел и сохранил в переменной «searchWord». Затем определив массив розничных продавцов и установив длину этого массива в переменной ' subStringLength. Теперь я запускаю цикл while, который проверяет любое из слов в моем «searchWord», и если он находит совпадение, он возвращает true. Проблема indexOf() возвращает только число или логическое значение. Как бы я адаптировал этот код так, чтобы он соответствовал любому из слов с помощью слова «searchWord», если возвращает значение слова, которое оно соответствовало. Затем я могу взять это слово и сопоставить, если с ключом объекта, который используется для хранения кодов ваучера для этого продавца? Любая помощь приветствуется, вот как я это делаю до сих пор:Javascript проверить условия поиска по массиву и возвращаемому значению
const searchWord = $('.form-control').val();
const searchRetailers =['Debenhams','debenhams', 'Argos', 'argos', 'Currys', 'currys', 'PC World', 'Pc World', 'pc World', 'pc world', 'John Lewis', 'john Lewis', 'john lewis','eBay', 'Ebay', 'ebay', 'Amazon', 'amazon'];
let subStringLength = searchRetailers.length;
while(subStringLength--) {
if (searchWord.indexOf(searchRetailers[subStringLength])!=-1) {
// show popup 1
}else {
// show popup 2
}
}
Можете ли вы опубликовать пример того, что может быть 'searchWord'! –
, так что словом поиска может быть «Argos television» или «дешевый шарф debenhams» –