Sobes.tech
Junior
106
questionbank

Что такое чистая функция?

Ответ от нейросети

sobes.tech AI

Чистая функция — это функция, которая удовлетворяет двум условиям:

  1. Детерминированность: При вызове с одинаковыми аргументами она всегда возвращает одинаковый результат.
  2. Отсутствие побочных эффектов: Она не изменяет внешнее состояние или данные за пределами своей области видимости (например, не модифицирует глобальные переменные, не записывает данные в файл, не делает сетевые запросы).

Пример чистой функции:

// Чистая функция: всегда вернет сумму двух чисел, не изменяя внешние переменные.
function add(a, b) {
  return a + b;
}

Пример нечистой функции (с побочным эффектом):

// Нечистая функция: изменяет внешнюю переменную counter.
let counter = 0;

function incrementCounter() {
  counter++;
  return counter;
}

Пример нечистой функции (не детерминирована):

// Нечистая функция: результат зависит от текущего времени.
function getCurrentTime() {
  return new Date().getTime();
}