// async function f() {
// console.log('hello world') ;
// // return 'hello world';
// }
// f().then(v => console.log(v))
// // "hello world"
// class Sleep {
// constructor(timeout) {
// this.timeout = timeout;
// }
// then(resolve, reject) {
// const startTime = Date.now();
// setTimeout(
// () => resolve(Date.now() - startTime),
// this.timeout
// );
// }
// }
// (async () => {
// const sleepTime = await new Sleep(1000);
// console.log(sleepTime);
// })();
// function sleep(interval) {
// return new Promise(resolve => {
// setTimeout(resolve, interval);
// })
// }
// // 用法
// async function one2FiveInAsync() {
// for(let i = 1; i <= 5; i++) {
// console.log(i);
// await sleep(1000);
// }
// }
// one2FiveInAsync()
// async function f() {
// await Promise.reject('出错了');
// }
// f()
// .then(v => console.log(v))
// .catch(e => console.log(e))
// // 出错了
// async function f() {
// await Promise.reject('出错了');
// await Promise.resolve('hello world'); // 不会执行
// }
// f().then((res) => {
// console.log('res===',res)
// }).catch(error => {
// console.log('error===',error)
// })
// async function f() {
// await Promise.reject('出错了');
// try {
// await Promise.reject('出错了');
// } catch(e) {
// }
// return await Promise.resolve('hello world');
// }
// f()
// .then(v => console.log(v)).catch(error => {
// console.log('error==',error)
// })
function generateP1(){
return new Promise((resolve,reject) => {
setTimeout(() => {
resolve('resolved11111')
// reject('rejected')
},1000)
})
}
function generateP2(){
return new Promise((resolve,reject) => {
setTimeout(() => {
resolve('resolved22222')
// reject('rejected')
},5000)
})
}
function generateP3(){
return new Promise((resolve,reject) => {
setTimeout(() => {
resolve('resolved33333')
// reject('rejected')
},1000)
})
}
function generateP4(){
return new Promise((resolve,reject) => {
setTimeout(() => {
reject('resolved44444')
// reject('rejected')
},1000)
})
}
async function test() {
let promises = [generateP1(),generateP2(),generateP3(),generateP4()]
console.log('promises==',promises)
let results = []
for(let promise of promises) {
results.push(await promise)
}
console.log(results)
}
test()
// console.log('result===',result)
console