Callbacks Async

Recapitulando o que é callback.

Nativamente era comum usar funções de callback para lidar com requisições assíncronas, para executar algo após determinada tarefa assíncrona ter sido executada (Forma muito verbosa!).

Exemplo de Callback async

O callback async é o segundo parâmetro do método addEventListener().

                        btn.addEventListener('click', () => {
                            alert('Você clicou em mim!');
                        
                            let pElem = document.createElement('p');
                            pElem.textContent = 'Este é um novo parágrafo.';
                            document.body.appendChild(pElem);
                        });
                    
O primeiro parâmetro é o tipo de evento a ser executado e o segundo parâmetro é uma função callback que é chamada quando o evento é disparado.
Quando passamos uma função callback como um parâmetro em outra função, nós apenas estamos passando a rêferencia da função como argumento, ou seja, a função callback não é executada imediatamente.
Ela é chamada de volta assíncronamente dentro do corpo da função que a contém, que é responsável por executar a função callback quando for necessário.

References

Callbacks assíncronos