JavaScript Async
- 上一页 JS Promise
- 下一页 DOM 简介
"async and await make promises easier to write"
async ka aikata function kaiwaita Promise
await ka aikata function kaiwaita Promise
fasiyarin Async
kalmomomi a cikin function async
ka aikata function kaiwaita promise:
wurin
async function myFunction() { return "Hello"; }
kuma wadanda:
async function myFunction() { return Promise.resolve("Hello"); }
duba wasu hanyar kuma a yiwa Promise:
myFunction().then( function(value) { /* 成功时的代码 */ }, function(error) { /* 出错时的代码 */ } );
wurin
async function myFunction() { return "Hello"; } myFunction().then( function(value) {myDisplayer(value);}, function(error) {myDisplayer(error);} );
ko wadanda, saboda ana kirayi wa'annan daga mutum (jumlarin mutum, kuma kuma daga ra'ayin),
wurin
async function myFunction() { return "Hello"; } myFunction().then( function(value) {myDisplayer(value);} );
fasiyarin Await
kalmomomi a cikin function await
ka aikata function kaiwaita promise:
let value = await promise;
await
kalmomomi zai async
a gida gida
wurin
kanawa kaiwa kamaru kuma karanta shi gida.
fasiyarin gaba
async function myDisplay() { let myPromise = new Promise(function(myResolve, myReject) { myResolve("I love You !!"); }); document.getElementById("demo").innerHTML = await myPromise; } myDisplay();
kaiwa wakilai
async function myDisplay() { let myPromise = new Promise(function(myResolve, myReject) { setTimeout(function() { myResolve("I love You !!"); }, 3000); }); document.getElementById("demo").innerHTML = await myPromise; } myDisplay();
kaiwa file
async function getFile() { let myPromise = new Promise(function(myResolve, myReject) { let req = new XMLHttpRequest(); req.open('GET', "mycar.html"); req.onload = function() { if (req.status == 200) {myResolve(req.response);} else {myResolve("File not Found");} }; req.send(); }); document.getElementById("demo").innerHTML = await myPromise; } getFile();
浏览器支持
ECMAScript 2017 引入了 JavaScript 关键字 async
和 await
。
下表注明了首个完全支持两者的浏览器版本:
Chrome | IE | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome 55 | Edge 15 | Firefox 52 | Safari 11 | Opera 42 |
2016 年 12 月 | 2017 年 4 月 | 2017 年 3 月 | 2017 年 9 月 | 2016 年 12 月 |
- 上一页 JS Promise
- 下一页 DOM 简介