Middle
O que é uma função pura? O console.log dentro de uma função é um efeito colateral?
sobes.tech IA
Resposta da IA
Uma função pura é uma função que, para entradas iguais, sempre retorna o mesmo resultado e não provoca efeitos colaterais (side-effects).
Efeitos colaterais são quaisquer ações da função que vão além do cálculo do valor, por exemplo:
- modificar variáveis ou estados externos,
- realizar entrada/saída (como escrever na consola, trabalhar com ficheiros, rede),
- modificar os argumentos da função.
console.log dentro de uma função é um efeito colateral, pois imprime dados na consola, o que influencia o mundo exterior e não está diretamente relacionado com o valor devolvido pela função.
Exemplo de função pura:
function add(a, b) {
return a + b;
}
Exemplo de função com efeito colateral:
function logSum(a, b) {
const sum = a + b;
console.log(sum); // efeito colateral
return sum;
}
Assim, console.log dentro da função torna-a impura.