JSFiddle - React, Tailwind, and code Playground
by Vladymyr Shevchuk
JavaScript
const getUrl = index => `https://jsonplaceholder.typicode.com/posts/${index}`;
const fakeFetch = marker => {
return new Promise((resolve, reject) => {
setTimeout(() => {
return Math.random() >= 0.5 ? resolve(marker) : reject(marker);
}, 1000);
});
};
// const result = fakeFetch()
// .then(data => console.error('data', data))
// .catch(error => console.error('error', error));
const getResolve = data => {
return new Promise(resolve => {
setTimeout(() => {
resolve(data);
}, 1000);
});
};
const getReject= data => {
return new Promise((resolve, reject) => {
setTimeout(() => {
reject(data);
}, 500);
});
};
const race = promises => {
return new Promise((res, rej) => {
const riba = promises.map(p => p.then(res));
riba.every(p => {
console.error(p.value);
return p;
})
return riba;
});
}
const allResult = race([getResolve(1), getReject(2)])
.then((...data) => {
console.error('all data', data);
}).catch((...error) => {
console.error('all error', error);
});