Sobes.tech
Middle

Kokius kitus Promise API metodus žinai, išskyrus Promise.all?

sobes.tech AI

Atsakymas iš AI

Be to, Promise.all yra keletas naudingų metodų Promise API:

  • Promise.race(iterable) — grąžina pažadą, kuris bus išspręstas arba atmestas, kai pirmas iš perduotų pažadų bus išspręstas arba atmestas.

  • Promise.allSettled(iterable) — grąžina pažadą, kuris bus išspręstas, kai visi perduoti pažadai baigsis (nesvarbu, ar sėkmingai, ar ne), ir grąžins masyvą objektų su kiekvieno pažado būsena.

  • Promise.any(iterable) — grąžina pažadą, kuris bus išspręstas su pirmo sėkmingai išspręsto pažado rezultatu; jei visi pažadai atmesti, jis atmestas su AggregateError.

Pavyzdys, kaip naudoti Promise.race:

const p1 = new Promise(resolve => setTimeout(() => resolve('Pirmas'), 500));
const p2 = new Promise(resolve => setTimeout(() => resolve('Antras'), 100));

Promise.race([p1, p2]).then(result => console.log(result)); // Išves 'Antras'