/*function request() { // 此处的request返回的是一个Promise return new Promise((resolve, reject) => { ajax({ url: 'www.someurl.com', onSuccess(res) { resolve(res); }, onFail(err) { reject(err); } }); }); }*/ function request2() { // 此处的request返回的是一个Promise return new Promise((resolve, reject) => { ajax({ url: 'www.someurl.com', onSuccess(res) { resolve(res); }, onFail(err) { reject(err); } }); }); } /*let it = gen(); let p = it.next().value; // p是yield返回的Promise p.then(res => it.next(res), err => it.throw(err) // 发生错误时,将错误抛入生成器 ); function* gen() { try { let response = yield request(); console.log(response.text); } catch (error) { console.log('Ooops, ', error.message); // 可以捕获Promise抛进来的错误! } } */ fetch(request2); async function fetch(request1) { //console.log(request1) try { let response = await request1(); // request定义同上一端段示例代码 console.log(response1.text); } catch (error) { console.log('Ooops, ', error.message); } }