---
# System prepended metadata

title: '[基礎系列]同步非同步函式'
tags: [Web]

---

---
tags: GDSC
---

# [基礎系列]同步非同步函式

---

## 前言

善用同步/非同步可以增加系統的效率，讓使用者體驗更好。 

---

## 同步Synchronous

> 概念:呼叫一件事情需要等待完成才能做下一件事情

平常基本函式型態都是同步型態!!!

---

## 非同步Asynchronous

> 概念:呼叫一件事情不需等待完成之後才能做下一件事情。

----

### Promise

處理非同步行為的語法，可以優化非同步，Promise為建構這些內容的函式

### async 

async function可以來定義JavaScript非同步函式，但函式內部是其實是需要同步運作的(完成內部)。

### await

await可以暫停非同步函式的運行，直到非同步進入resolve/reject接收完成繼續運行非同步函式。

[推薦與參考文章](https://www.casper.tw/development/2020/02/16/all-new-promise/)
