Promise
とは
PromiseはES2015で追加された非同期処理のための機能です。
Promiseを使うことでより便利かつわかりやすい形で非同期処理を扱う
ことができる。
非同期処理においては終わったあとに何をするか
を表す関数が不可欠であり、コールバック関数ベースの非同期処理の場合は非同期処理を開始する関数(setTimeout,readFile..etc)に直接これをコールバック関数として渡していました。
Promiseベースの非同期処理では非同期処理を行う関数は関数を受け取らず、Promiseオブジェクト
を返却します。
そのPromiseオブジェクトに対して終わったあとに行う処理を表す関数を登録
します。
これがPromiseベースの非同期処理の基本的な流れです。
Promiseを利用した例
import {readFile} from "fs/promises"
const p = readFile("foo.txt" , "utf8")
p.then((data) => {
console.log(data)
})