Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: функции

Перечислите способы объявления функции и особенность каждого?

Этот вопрос проверяет знание разных способов объявления функций в JavaScript и понимание их особенностей и различий.

Короткий ответ

В JavaScript функции можно объявлять несколькими способами: через function declaration, function expression, стрелочные функции (arrow functions), и методы в объектах. Каждый из этих способов имеет свои особенности: function declaration подвержены "поднятию" (hoisting), function expression нет, а стрелочные функции не имеют своего контекста this.

Длинный ответ

В JavaScript есть несколько способов объявления функций, и каждый имеет свои особенности:

  1. Function Declaration: Объявляется с использованием ключевого слова function и имени функции. Эти функции поднимаются ("hoisting"), то есть их можно вызывать до их определения в коде.

    function greet() {  
    	console.log("Hello")
    } 
    greet(); // "Hello"
  2.  Function Expression: Функция сохраняется в переменную. В отличие от function declaration, она не поднимается.

    const greet = function() {  
    	console.log("Hello")
    }
    greet(); // "Hello"
  3.  Arrow Function (стрелочная функция): Короткая форма записи функций. Особенность — отсутствие собственного контекста this, что удобно в колбэках и функциональных компонентах в React.

    const greet = () => console.log("Hello")
    greet() // "Hello"
  4.  Методы объектов: Функции, которые объявляются внутри объектов. Могут обращаться к свойствам объекта через this.

    const person = {  
    	name: "John",  
    	greet() {    
    		console.log(`Hello, ${this.name}`) 
    	} 
    }
    person.greet(); // "Hello, John"

Каждый метод объявления полезен в разных ситуациях: для упрощенного кода, более удобной работы с контекстом или для структурирования программы.

Уровень

  • Рейтинг:

    3

  • Сложность:

    4

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#функции

Подпишись на React Developer в телеграм