Sobes.tech
Junior

O que é uma função pura?

sobes.tech IA

Resposta da IA

Uma função pura é uma função que satisfaz duas condições:

  1. Determinismo: Ao ser chamada com os mesmos argumentos, ela sempre retorna o mesmo resultado.
  2. Ausência de efeitos colaterais: Ela não altera o estado externo ou dados fora do seu escopo (por exemplo, não modifica variáveis globais, não escreve em ficheiros, não faz pedidos de rede).

Exemplo de função pura:

// Função pura: sempre retornará a soma de dois números sem alterar variáveis externas.
function add(a, b) {
  return a + b;
}

Exemplo de função impura (com efeito colateral):

// Função impura: altera a variável externa counter.
let counter = 0;

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

Exemplo de função impura (não determinista):

// Função impura: o resultado depende do tempo atual.
function getCurrentTime() {
  return new Date().getTime();
}