js как сравнить первую половину слова, которое ввёл пользователь в окошке ввода на сайте с первой половиной слов из массива
И если найдено совпадение, вывести "Найдено". Без учета регистра.
Например, пользователь водит "милый", Берем целую часть от деления на 2
Слова в массиве "милая,миленький, солнце"
В итоге программа должна найти совпадение слов милый и милая
Т.к милый/2=ми милая/2=ми, но миленький/2=миле
Ответы (1 шт):
Автор решения: frozencoast
→ Ссылка
Если верно вас понял, то вот решение:
let input = document.getElementsByTagName("INPUT")[0];
let p = document.getElementsByTagName("P")[0]
let words = ["милая", "миленький", "солнце"];
input.addEventListener('input', function() {
p.innerHTML = '';
if (this.value.length > 1) {
let part = getPart(this.value);
for (let i in words) {
if (part == getPart(words[i])) {
p.innerHTML = 'Найдено';
break;
}
}
}
});
function getPart(val) {
return val.substring(0, Math.floor(val.length / 2)).toLowerCase();
}
<input type="text" />
<p></p>