Задать вопрос
@Roweb
Верстальщик

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

function f1() {
			let a = 33;
			f2();

		}

		function f2() {
			console.log(a);
		}
		f1()

Функция f2 не видит переменную a, хотя запускается в том же контексте.
Возможно будет неправильно говорить о контексте, так как this в обоих случаях - window. Но думаю смысл понятен
  • Вопрос задан
  • 119 просмотров
Подписаться 1 Простой 6 комментариев
Пригласить эксперта
Ответы на вопрос 2
Нужно читать документацию внимательно. В JavaScript синтаксическая область видимости, для того чтобы функция f2 видела переменные объявленные в скоупе f1, сама функция должна быть объявлена в скоупе f1, у тебя же она объявлена в глобальном скоупе.
Выдели время и прочитай например JavaScript. Подробное руководство, Дэвид Флэнаган (6-е издание)
Сейчас ты пытаешся ставить задачи абсолютно не зная основ JavaScript
(ES6 читай отдельно на MDN )
Ответ написан
@M0OL0L
function f1() {
      let a = 33;
      return f2(){
      console.log(a);
    }
    }

f1()();

Отнесись серьезно к совету Владимира! и прочитай про замыкания.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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