As Promises são uma parte fundamental do JavaScript moderno e são usadas para lidar com operações assíncronas de maneira mais eficiente e legível. Elas representam um valor que pode estar disponível agora, no futuro ou nunca.
Neste artigo, vamos explorar as Promises em JavaScript.
O que são Promises?
Uma Promise é um objeto que representa a eventual conclusão ou falha de uma operação assíncrona. Basicamente, é uma promessa de que haverá um resultado no futuro. Uma Promise tem três estados possíveis:
- Pendente (Pending): O estado inicial; a Promise não foi resolvida nem rejeitada.
- Resolvida (Fulfilled): A operação foi concluída com sucesso.
- Rejeitada (Rejected): A operação falhou.
let promise = new Promise((resolve, reject) => {
let condition = true;
if(condition) {
resolve('Promessa resolvida!');
} else {
reject('Promessa rejeitada!');
}
});
promise.then((message) => {
console.log(message); // Saída: Promessa resolvida!
}).catch((message) => {
console.log(message);
});
Encadeamento de Promises
Uma das principais vantagens das Promises é a capacidade de encadear operações assíncronas. O método then()
retorna uma nova Promise, permitindo que você chame outro then()
. Isso é conhecido como encadeamento de Promises.
let promise = new Promise((resolve, reject) => {
resolve(1);
});
promise.then((value) => {
console.log(value); // Saída: 1
return value + 1;
}).then((value) => {
console.log(value); // Saída: 2
});
Tratamento de Erros
O método catch()
é usado para lidar com Promises rejeitadas. Ele retorna uma nova Promise e lida com estados rejeitados da Promise original ou de qualquer Promise retornada por then()
.
let promise = new Promise((resolve, reject) => {
reject('Erro!');
});
promise.catch((error) => {
console.log(error); // Saída: Erro!
});
Conclusão
As Promises em JavaScript são uma ferramenta poderosa para lidar com operações assíncronas. Elas permitem que você organize seu código de maneira mais legível e gerencie fluxos de controle complexos.
Embora as Promises possam parecer complicadas no início, com prática e experiência, elas se tornarão uma parte indispensável de seu conjunto de ferramentas de programação JavaScript.
E para você validar seus códigos, você precisará de uma plataforma de host completa. Clique aqui e conheça a Hostinger, a hospedagem de sites com potência de verdade!!!