Sobes.tech
Middle

¿Qué es una función pura? ¿Es un efecto secundario el console.log dentro de una función?

sobes.tech AI

Respuesta de la IA

Чистая функция — это функция, которая при одинаковых входных данных всегда возвращает одинаковый результат и не вызывает никаких побочных эффектов (side-effects).

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

  • изменение внешних переменных или состояний,
  • выполнение ввода-вывода (например, запись в консоль, работу с файлами, сетью),
  • изменение аргументов функции.

console.log внутри функции является побочным эффектом, так как он выводит данные в консоль, что влияет на внешний мир и не связано напрямую с возвращаемым значением функции.

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

function add(a, b) {
  return a + b;
}

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

function logSum(a, b) {
  const sum = a + b;
  console.log(sum); // side-effect
  return sum;
}

Таким образом, console.log внутри функции делает её нечистой.