1
resposta

(() =>{

Não sei se pulei alguma explicação, mas voltei e não vi esclarecimento de porque a função começa com esses códigos: (() =>{

Entendi que isso representa uma função, mas não ficou claro o motivo. Consigo alguma ajuda em entender isso?

1 resposta

Olá, Rafael! Como vai?

Chamamos essa estrutura de arrow function, que no inglês significa "função de flecha" (por causa do =>).

Basicamente, temos a seguinte estrutura:

() => {}

Os () você já viu em funções normais, são os parênteses que recebem os parâmetros. Os {} também são familiares, é o corpo da função. Já o => é apenas parte da estrutura. Quando a função apenas retorna um dado, como por exemplo:

function retornaDado() {
    return true;
}

Podemos fazer da seguinte maneira:

() => true; 

Dessa forma a flecha "aponta" para o retorno da função. Acredito que esse é o caso em que esse símbolo fica mais claro.

Mas é isso, é apenas uma forma mais eficiente de escrever uma função. Como não temos um lugar para nomeá-la, é preciso atribuir ela a uma constante, ou passar via parâmetro.

const funcao = () => true;

// ou

function recebeFuncao(umaFuncao) { ... }

recebeFuncao(() => true); // dentro de recebeFuncao ela pode ser referenciada como umaFuncao

Se quiser saber mais, pode encontrar no MDN: Arrow functions

Qualquer dúvida é só falar, bons estudos!