const p1 = new Promise((resolve,reject)=>{
setTimeout(()=>{
resolve('Promise1 has finished')
},1000)
resolve('Promise1 has finished')
})
const p2 = new Promise((resolve,reject)=>{
setTimeout(()=>{
reject('Promise2 has finished')
},2000)
})
Promise.all([p1,p2]).then((res)=>{
console.log(res)
}).catch(error=>{
console.log(error)
})
Promise.race([p1,p2]).then((res)=>{
console.log("race",res)
}).catch((error)=>{
console.log("race",error)
})