es6中 async await 底层实现原理
Posted flowlight
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了es6中 async await 底层实现原理相关的知识,希望对你有一定的参考价值。
Input
async function findPosts() { var response = await $.get(‘/posts‘); return JSON.parse(response.posts); } async function main() { console.log(‘starting...‘); var posts = await findPosts(); posts.forEach(function (post) { console.log(post); }); console.log(‘ending...‘); } main();
Output
function findPosts() { var ctx = this, args = arguments; return Promise.resolve().then(function () { var response; return $.get(‘/posts‘).then(function (value) { response = value; return JSON.parse(response.posts); }); }); } function main() { var ctx = this, args = arguments; return Promise.resolve().then(function () { console.log(‘starting...‘); var posts; return findPosts().then(function (value) { posts = value; posts.forEach(function (post) { console.log(post); }); console.log(‘ending...‘); }); }); } main();
我很想 知道他是如何
var posts = await findPosts();
后面的代码 也添加到 同一个
return findPosts().then( 方法中的
参考 https://github.com/jayphelps/sweet-async-await
以上是关于es6中 async await 底层实现原理的主要内容,如果未能解决你的问题,请参考以下文章