@Dimon123
Новичок, разбираюсь в веб-программировании

Как достать переменную из функции?

Привет. Если я создаю функцию function qwe(){var x=10; console.log(x);}, то как можно достать переменную x? Когда функция отрабатывает (если брэйкпоинт поставить), то можно достать - написать в консоли x; При этом, если я пишу window,x; - будет уже undefined, хотя записи x; и window,x; значат одно и то же.

Что такое execution context?Напишите, пожалуйста, своими словами - как сами понимаете. как execution context соотносится со scope (областью видимости)? это разные вещи или нет?
  • Вопрос задан
  • 3241 просмотр
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Вроде так должно работать:
var f=function qwe(){var x=10; return x}
console.log(f);
Еще есть вариант: глобально переопределить console.log();
Ответ написан
Комментировать
uassa
@uassa
Front-end разработчик
Почитай про области видимости и контексты в JavaScript (это не одно и то же).

https://learn.javascript.ru/functions-closures - области видимости
javascript.ru/ecma/part10 - контексты

Если кратко, то функция образует свой скоп (область видимости), когда ты в этом скопе (внутри функции) переменную объявляешь, то она будет видна только внутри этой фунции (замыкается внутри этой функции). Если тебе нужно получить значение x то тебе нужно её либо объявить вне функции, либо возвратить как результат выполнения фунции.

Примеры писать не буду, так как есть выше.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы