image

Acesse bootcamps ilimitados e +650 cursos pra sempre

60
%OFF
Article image
Heloisa Campos
Heloisa Campos31/08/2023 09:07
Compartilhe

Introdução às Promises em JavaScript: Agendando Tarefas Futuras

  • #JavaScript

As promises são um recurso fundamental no mundo do JavaScript, permitindo que agendemos tarefas para o futuro e, em seguida, executemos retornos de chamada baseados no resultado dessas tarefas, independentemente de serem bem-sucedidas ou não. Neste artigo, exploraremos o conceito de promessas e como elas podem ser usadas para otimizar o fluxo de trabalho assíncrono no JavaScript.

## Compreendendo o Conceito de Promises

Uma promise, em sua essência, é uma maneira de lidar com operações assíncronas de forma mais estruturada e eficiente. Em vez de lidar com aninhamento complexo de callbacks, as promises fornecem uma abordagem mais organizada para lidar com tarefas assíncronas.

Considere a seguinte função como exemplo:

const wait = milissegundos => {
// Esta função retorna uma nova promessa
return new Promise(resolve => {
  setTimeout(() => {
    resolve();
  }, milissegundos);
});
};

Esta função 'wait' retorna uma nova promise que é resolvida após o período de tempo especificado em milissegundos. Agora, vamos ver como podemos usar essa função para agendar tarefas futuras.

## Utilizando Promessas para Agendar Tarefas

Suponha que desejamos executar um console log após aguardar por um segundo:

wait(1000).then(() => {
console.log("Aguardou 1 segundo");
});

Aqui, a função `wait(1000)` retorna uma promise, e usando o método `.then()`, podemos agendar a execução do código dentro da função de retorno assim que a promessa for resolvida.

## Importância do Encadeamento Correto

Uma característica importante das promises é que os métodos `.then()` devem ser encadeados diretamente ao resultado da promise anterior. Isso significa que não devemos adicionar ponto-e-vírgula entre a função que retorna a promise e o método `.then()` subsequente. Veja um exemplo incorreto:

```javascript

wait(1000); /* ❌ */

.then(() => {

  console.log("Isso não funciona 👎");

})

```

Ao adicionar o ponto-e-vírgula após `wait(1000)`, o método `.then()` é chamado em nada, resultando em um erro.

## Conclusão

As promises são uma ferramenta valiosa para lidar com operações assíncronas em JavaScript. Elas simplificam o agendamento de tarefas futuras e a execução de ações com base no resultado dessas tarefas. Lembre-se sempre de encadear corretamente os métodos `.then()` no resultado das promises para garantir um fluxo de trabalho assíncrono suave e sem erros. Compreender e dominar o uso de promises abrirá portas para a criação de código mais eficiente e legível em suas aplicações JavaScript.

Compartilhe
Comentários (0)