Задать вопрос
@shpeks

Как из анонимной функции вытащить значение в глобальную переменную?

Есть анонимная функция, нужно из нее вытащить переменную для дальнейшего использования
let np;

window.onclick = function(e){
  var elem = e ? e.target : window.event.srcElement;
  np = elem.id + "";
  alert(np);
  return np;
};

console.log(np);

Функция берет ид выбранного елемента html и в elem.id отправляет его, алерт выводит все правильно но в консоль выводит undefined. Подскажите пожалуйста как исправить? что бы в переменную np занеслось то самое id.
  • Вопрос задан
  • 194 просмотра
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillbox
    JavaScript
    3 месяца
    Далее
  • Яндекс Практикум
    Фронтенд-разработчик расширенный
    13 месяцев
    Далее
  • Академия Eduson
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
WinPooh32
@WinPooh32
Stack Overflow answer searching expert
Эквивалентный код:
let np;
 
function callback(e){
  var elem = e ? e.target : window.event.srcElement;
  np = elem.id + "";
  alert(np);
  return np;
};

window.onclick = callback;
console.log(np);


Так понятнее почему ваш код не работает как вы задумывали?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы