クロージャを理解して正しく使うJavaScriptTomPenguinkarabiner. inc2022/01/26完全に理解したわ
View Slide
あなたは誰ですか?Vue.jsばっかりさわっているエンジニア。仙台から福岡のシステム開発会社へフルリモートで勤務。デザインからやるWeb制作の仕事、個人で小さく始めました。TomPenguintompenguin_Work at karabiner, inc
アジェンダ● クロージャとは● クロージャの何が嬉しいのか● いろいろなクロージャ● ダメなクロージャ
①クロージャとはWhat’s Closure
子関数が親関数の変数を参照する仕組みのことです。① クロージャとはちょう大雑把に言うとhttps://developer.mozilla.org/ja/docs/Web/JavaScript/Closures
これだけだよ。今日はお疲れ様でした。
嘘だよ。でも本当にクロージャってこれだけ
① クロージャとは親関数
① クロージャとは子関数
① クロージャとは親関数の変数
① クロージャとは親関数の変数の参照
① クロージャとは子関数を返却
① クロージャとは親関数の変数の参照を保持
②クロージャの何が嬉しいのかWhat makes you happy?
② クロージャの何が嬉しいのか● 関数の再利用性が高まる● 引数がシンプルになる● テストが容易になる
② クロージャの何が嬉しいのか関数の再利用性が高まる同じ api client、optionを使いまわせる
② クロージャの何が嬉しいのか引数がシンプルになるpath を渡すだけで良い
テストが容易になるsomeAPIClient にモックを差し込むことでリクエスト結果をコントロールできる② クロージャの何が嬉しいのか
③いろいろなクロージャVarious Closures
「子関数を直接返す」③ いろいろなクロージャ
「親関数の引数を参照する」③ いろいろなクロージャ
「もっと短く」③ いろいろなクロージャ
「参照先がModuleスコープ」③ いろいろなクロージャ
④ダメなクロージャBad pattern
「状態を持っている」④ ダメなクロージャクロージャは参照を保持するので状態を持つことができる。しかし状態を持つと状態の変更の追跡が困難になるので避ける。
子関数が親関数の変数を参照する仕組みのことです。まとめhttps://developer.mozilla.org/ja/docs/Web/JavaScript/Closuresクロージャとはちょう大雑把に言うと