Написать функцию, которая получает число из input , переводит его в число, и с помощью метода indexOf проверяет наличие в массиве
Нужно написать функцию, которая получает число из input i-11, переводит его в число, и с помощью метода indexOf проверяет наличие в массиве d11. Функция выводит в out-11 -1 если такого числа нет в массиве, либо его индекс в массиве.
Помогите найти ошибку и прошу обяснить как єто работает уже пару часов сижу не могу врубиться
let d11 = [2, 3, 4, 5, 6, 7];
function f11() {
let out = document.querySelector('.out-11');
let a = document.querySelector('.i-11').value;
a = a.parseInt();
a = a.indexOf(d11.length);
out.innerHTML = a;
}
document.querySelector('.b-11').onclick = f11;
Ответы (2 шт):
Автор решения: Алексей Шиманский
→ Ссылка
Попробуйте так:
let d11 = [2, 3, 4, 5, 6, 7];
function f11() {
let out = document.querySelector('.out-11');
let inputValue = document.querySelector('.i-11').value;
indexOfinputValue = d11.indexOf(parseInt(inputValue));
out.innerHTML = indexOfinputValue;
}
document.querySelector('.b-11').onclick = f11;
неправильно использовался метод indexOf. Перепутан местами объект, у которого должен был быть вызван метод и аргумент. И parseInt неправильно использовался
Автор решения: Asylbek
→ Ссылка
Лучше вот так без всяких parseInt:
let d11 = [2, 3, 4, 5, 6, 7];
function f11() {
let input = +document.querySelector('.i-11').value;
let out = d11.indexOf(input);
document.querySelector('.out-11').innerHTML = out;
}
document.querySelector('.b-11').onclick = f11;