@Julia-Kovalchuk

Вопрос про тест на lear js?

Всем привет! Встретился интересный вопрос в тестах на learn js, скрин ниже. Правильный ответ undefined, а не function. Может кто-нибудь может объяснить ответ undefined?6360ce9ce7e1d546201873.jpeg
  • Вопрос задан
  • 82 просмотра
Пригласить эксперта
Ответы на вопрос 1
sergiks
@sergiks Куратор тега JavaScript
♬♬
Этот тест на понимание отличия
объявления функции
и функционального выражения.

function f() {}; // традиционное объявление функции
тут f вылезет наверх ("hoisting") и будет доступна всему коду.

(function f() {}) // функциональное выражение function expression

// ещё варианты
const x = function f() {};
console.log( function f() {} );
имя f будет относиться к этой функции только внутри неё, для рекурсивных вызовов, например.

В тесте if( function() {}) как раз создаёт function expression. Поэтому f нигде снаружи не видна.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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