async
创建一个异步函数来定义一个代码块,在其中运行异步代码;
怎样变成异步防触电安全知识函数呢?以 async
这个关键字开始,它可以被放置在一个函数前面
async function f() { return 1;} f().then(alert); // 1 //上下结果一样 async function f() { return promi.resolve(1);} f().then(alert); // 1 //也可以用箭头函数let hello = async () => { return "1" };hello().then((value) => console.log(value))//返回值也可以简化成这样hello().then(console.log)
异步函数的特征之一:保证函数的返回值为 promi
。
将 async
关键字加到函数申明中,可以告诉它们返回的是 promi
,而不是直接返回值。此外,它避免了同步函数为支持使用 await
带来的什么的学生任何潜在开销。
await
只在异步函数里面才起作用。它可以放在任何异步的,关键字 a东莞房屋wait
让 javascript
引擎等待直到 promi
完成并返回结果。在等待promi
的同时,其他正在等待执行的代码就有机会执行了。
您可以在调用任何返回promi
的函数时使用 await
,包括web api
函数。
async function f() { let promi = new promi((resolve, reject) => { ttimeout(() => resolve("咚!"), 1000) }); let result = await promi; // 等待执行,直到 promi resolve 执行完 alert(result); // "咚!"} f();//拿到 result 作为结果继续往下执行。所以上面这段代码在1秒后显示 “咚!”。
注意:await 实际上会暂停函数的执行,直到 promi 状态变为 完成,然后以 promi 的结果继续执行。这个行为不会耗费任何 cpu 资源,因为 javascript 引擎可以同时处理其他任务:执行其他脚本,处理事件等。
有了async/await
就去除了到处都是 .then()
代码块,因为await
会等待了。
async function a() { let respon = await fe经典幽默tch('c.jpg'); let myblob = await respon.blob(); let objecturl = url.createobjecturl(myblob); let image = document.createelement('img'); image.src = objecturl; document.body.appendchild(image);} a().catch(e => { console.log('问题: ' + e.m射手 字幕essage);});
用更少的.then()
块来封装代码,同时它看起来很像同步代码,所以它非常直观。这样用的很爽!
到此这篇关于js的async/await
怎么使用的文章就介绍到这了,更多相关js的async/await 用法内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com!
本文发布于:2023-04-04 12:02:02,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/39a07640784ad452e9052e3484377258.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:JS中的async与await怎么使用.doc
本文 PDF 下载地址:JS中的async与await怎么使用.pdf
留言与评论(共有 0 条评论) |