iT邦幫忙

2024 iThome 鐵人賽

DAY 5
0
自我挑戰組

認識JavaScript系列 第 5

[第五天] async/await

  • 分享至 

  • xImage
  •  

async 是非同步函式。
那使用時,須注意一定要放置在前面哦!

async function HelloWorld() {
    return "Hello World!";
}

那 await 呢?是運算子。
通常是搭配 async 一起使用的,會暫停 async 函式執行。

async function getData() {
    let result = await fetch('https://api.example.com/getData');
    console.log(result);
}

這時候,會提到一個東西:「Promise」。
「Promise」是物件,是代表將要成功或是失敗的非同步操作所產生的值。

let myPromise = Promise(function(resolve, reject) {});

成功:myPromise就會是resolve
失敗:myPromise就是recject啦

額外常用方法:
.then() 成功的結果
.catch() 錯誤的訊息
.finally() 通常就是清理的動作

於是上面的例子就會改成

fetch('https://api.example.com/getData')
 .then(result => { console.log(result); })
 .catch(error => { console.log('fail:', error); })
 .finally(() => { console.log('END'); });

上一篇
[第四天] PageMethods
下一篇
[第六天] Callback
系列文
認識JavaScript30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言