Questão FC546370
Em uma aplicação da área fiscal estadual criada com a versão mais recente da linguagem JavaScript, gerou-se um dashboard de monitoramento de arrecadação em tempo real que depende d
Desenvolvimento Web
FCC · 2025
Em uma aplicação da área fiscal estadual criada com a versão mais recente da linguagem JavaScript, gerou-se um dashboard de monitoramento de arrecadação em tempo real que depende de múltiplas APIs externas para obter dados de contribuintes. Para melhorar a experiência do usuário, a equipe decidiu implementar uma solução que retorne o primeiro resultado bem-sucedido entre várias requisições concorrentes, ignorando as que falharem. O método JavaScript utilizado para resolver esse cenário foi o
- Array.prototype.at
- Promise.all
- Promise.race
- Promise.any
- Async.iterators
Mostrar resposta e comentário
Gabarito
D
Comentário do professor
Promise.any() é um método estático que recebe um iterável de promessas e retorna uma nova promessa que se resolve com o valor da primeira promessa do conjunto que for cumprida. É ideal quando precisamos apenas de um resultado bem-sucedido entre várias requisições concorrentes.
Ao encontrar a primeira resolução, a promessa retornada é cumprida com esse valor e o fluxo do código continua. Se todas as promessas forem rejeitadas, a promessa final é rejeitada com um AggregateError que agrupa os motivos das rejeições.
Na prática, use Promise.any([fetchA(), fetchB(), fetchC()]) para obter o primeiro retorno válido entre várias APIs, ignorando falhas das demais. Observe que as outras promessas continuam em execução, pois não há cancelamento automático, mas o controle lógico já está resolvido assim que a primeira promessa é cumprida.
Conteúdo do catálogo FC Concursos · Atualizado em