0
function getYourHWA(idElement){
    let value = 0;
    idElement.addEventListener('change', (e) => {
    value = +e.target.value; 
    console.log(value) // введенное значение в input
});
    console.log(value); // 0
};

Вопрос. Почему не сохраняется значение введенное в input. Как это значение вывести из функции? Кстати, например если я сделаю так, то будет undefined, почему?

function getYourHWA(idElement){
    idElement.addEventListener('change', (e) => {
    let value = 0;
    value = +e.target.value;
    return value
    });
};
console.log(getYourHWA(input_block)) // undefined

Если можно вариант как это делают нормальные люди, а не как я учусь

  • Когда выполняется строчка - console.log(value); // 0? –  Sep 01 '21 at 18:56
  • console.log(getYourHWA(input_block)) // undefined - потому что функция getYourHWA ничего не возвращает. –  Sep 01 '21 at 18:57
  • Обычно в вашем случае отсылают сюда: https://ru.stackoverflow.com/questions/554290/ Если что-то будет неясно и захотите разобраться в теме асинхронности основательно, стоит прочитать этот раздел: https://learn.javascript.ru/async – vsemozhebuty Sep 01 '21 at 19:21
  • Там где написал, забыл поставить вызов функции, после ее закрытия – Евгений Sep 02 '21 at 08:55

1 Answers1

0

Если можно вариант как это делают нормальные люди, а не как я учусь

Нормальные люди документацию читают.

addEventListener('change', e => {
    value = +e.target.value;
    console.log(value);
});
<input type='number'>
nazarpunk
  • 2,418