Я пытаюсь установить тайм-аут, используя поле ввода HTML, и использовать его в качестве параметра для setTimeout
.
Это очень простая задача, но я не являюсь разработчиком JS, поэтому я не уверен, как правильно передать параметр в функцию стрелки.
HTML-код состоит только из 2 элементов.
<button id="myElementId">Click me</button>
<input id="milliseconds" type="number" placeholder="number of milliseconds"/>
А мой JS-код выглядит так:
const clickbutton = document.getElementById('myElementId');
const millis = parseInt(document.getElementById('milliseconds').value, 10);
clickbutton.addEventListener('click', (event) => {
setTimeout(() => { alert("I work");
}, millis); // <-- here I don't want to use a static value
});
Однако кажется, что я не могу получить значение millis
из внешней области видимости внутри функции стрелки.
Я также пытался передать второй аргумент:
const clickbutton = document.getElementById('myElementId');
const millis = parseInt(document.getElementById('milliseconds').value, 10);
clickbutton.addEventListener('click', (event, millis) => {
setTimeout(() => { alert("I work");
}, millis);
});
без удачи там.
Любая помощь приветствуется.
Спасибо.