Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: this, bind

Какие способы привязки контекста функции существуют в JavaScript?

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

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

В JavaScript контекст функции можно привязывать разными способами.
Основные способы — bind, call и apply.
Также контекст зависит от способа вызова функции.
Стрелочные функции имеют особое поведение this.

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

Контекст выполнения (this) в JavaScript определяется не местом объявления функции, а способом её вызова.

Определение

Контекст функции — это значение this, доступное внутри тела функции.

Явная привязка контекста

JavaScript предоставляет методы:

  • call — вызывает функцию с заданным this и аргументами

  • apply — аналогичен call, но принимает массив аргументов

  • bind — возвращает новую функцию с привязанным this

function greet() {
  console.log(this.name);
}

const user = { name: 'Alex' };
greet.call(user);

Контекст через способ вызова

Контекст зависит от формы вызова:

  • метод объекта → this указывает на объект

  • обычный вызов → undefined (в strict mode)

Стрелочные функции

У стрелочных функций:

  • нет собственного this

  • this берётся из внешней области видимости

Это удобно для колбэков и обработчиков.

Когда возникают ошибки

Проблемы с this часто появляются:

  • при передаче методов как колбэков

  • в обработчиках событий

  • при работе с таймерами

Краткий вывод

Контекст в JavaScript управляется способом вызова функции. Явная привязка и стрелочные функции помогают избежать ошибок с this.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию

Уровень

  • Рейтинг:

    5

  • Сложность:

    6

Навыки

  • JavaScript

    JavaScript

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

#this

#bind

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

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства

Записаться на консультацию