継続渡しスタイル (CPS: Continuation-assing style) 例えば以下は引数として与えられた数に 1 を加えるだけの関数と, それを呼び出すプログラム. function succ(x) { return x + 1; } console.log(succ(2)); // -> 3 CPS では関数がその継続 (callback) を受け取り, 内部でその継続を呼び出す. 上の例と同じものを CPS で書くと次のようになる. function succCPS(x, callback) { callback(x + 1); } succCPS(2, x => console.log(x)); // -> 3 この例だとほぼ何の得もないが, JavaScript において CPS は, ファイルの読み込みやサーバーへのリクエストの送信, ユーザーの入力待ちなど, 非同期