@lexstile

Как модернизировать ф-цию, чтобы она искала целы слова?

есть код:
var elements = ['Остров свободы', 'Мечты остров', 'Город'],
		filter = 'остров';
	
	filterElements = (elements, filter) => {
        return elements.filter((el) => {
            return el.toLowerCase().indexOf(filter.toLowerCase())  === 0;
        });
    }
	
	filterElements(elements, filter);

Ищет вхождения с начала строки.
Мне немного доработать нужно, чтобы искалось по словам.
Сейчас результат выполнения кода такой: Остров свободы
Мне нужно еще делать split по пробелу и проверять вхождения фильтра в отдельные слова, результат после выполнения должен быть такой: Остров свободы, Мечты остров

Пробую делать так, но не совсем понимаю ,куда дальше? -
filterElements = (elements, filter) => {
        return elements.filter((el1) => {
			el1.split(' ').filter((el2) => {
				console.log(el1);
				//return el2.toLowerCase().indexOf(filter.toLowerCase())  === 0;
			});
        });
    }
  • Вопрос задан
  • 69 просмотров
Решения вопроса 1
lastuniverse
@lastuniverse
Всегда вокруг да около IT тем
Может быть так?


если же вам нужно четкое соответствие слов (то есть "остров" равен "остров" но не равен "острова") то решение будет таким:
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
КРАФТТЕК Санкт-Петербург
от 60 000 до 80 000 ₽
Brightdata Тель-Авив
от 5 500 до 6 500 $
Rocket Брянск
от 60 000 до 100 000 ₽
22 мая 2024, в 02:15
10000 руб./за проект
21 мая 2024, в 23:47
30000 руб./за проект