Логотип YeaHub

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

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

Тренажёр

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

Обучение

Навыки

Задачи

Войти

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

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

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: side effect, pure function, functional programming, immutability

Какие действия считаются side effect?

Вопрос проверяет понимание побочных эффектов в функциональном программировании и их влияние на чистоту функций.

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

Побочные эффекты — это любые изменения состояния программы или взаимодействие с внешним миром, которые происходят во время выполнения функции. К ним относятся: изменение глобальных переменных, запись в файл, отправка HTTP-запроса, вывод в консоль, изменение DOM. Чистые функции не должны иметь побочных эффектов, что делает их предсказуемыми и тестируемыми.

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

Что такое побочные эффекты?

Побочные эффекты (side effects) — это любые операции, выполняемые функцией, которые влияют на состояние программы за пределами её локальной области видимости или взаимодействуют с внешним миром. В функциональном программировании чистая функция не должна иметь побочных эффектов: она только принимает аргументы и возвращает результат, не изменяя ничего вне себя.

Примеры побочных эффектов

  • Изменение глобальной переменной или свойства объекта
  • Запись в файл или базу данных
  • Отправка HTTP-запроса
  • Вывод в консоль (console.log)
  • Изменение DOM
  • Генерация случайных чисел
  • Получение текущего времени

Пример кода

// Функция с побочным эффектом (изменение глобальной переменной)
let counter = 0;
function increment() {
  counter++; // side effect
  return counter;
}

// Чистая функция без побочных эффектов
function add(a, b) {
  return a + b;
}

// Функция с побочным эффектом (запись в консоль)
function greet(name) {
  console.log('Hello, ' + name); // side effect
  return 'Hello, ' + name;
}

Где применяется

Понимание побочных эффектов важно при работе с React (useEffect), Redux (reducers должны быть чистыми), а также в функциональном программировании на JavaScript, Python и других языках. Изоляция побочных эффектов делает код более предсказуемым и упрощает тестирование.

Вывод: Побочные эффекты неизбежны в реальных приложениях, но их следует минимизировать и выносить на границы системы, чтобы основная логика оставалась чистой и тестируемой.

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

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

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

Уровень

  • Рейтинг:

    4

  • Сложность:

    4

Навыки

  • JavaScript

    JavaScript

  • React

    React

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

#side effect

#pure function

#functional programming

#immutability

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

Frontend developer

tech
tech
tech
tech
tech
tech
tech
tech
tech

Ментор по Frontend

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

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