Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Functional Programming Applied in JS

Functional Programming Applied in JS

「JSで実際に役立った関数型プログラミング」
jsCafe #17で発表しました。
関数型プログラミングの考え方を使うことで、JavaScriptのコードがすっきり書けた事例を紹介。

Tak Yanagida

December 22, 2013
Tweet

More Decks by Tak Yanagida

Other Decks in Programming

Transcript

  1. 自己紹介補足 • 古めのエンジニア  コンピュータ歴約30年  Linuxは0.99から • 実はデューク大学のMBA •

    ITエンジニアのための英語読解講 座はじめました ティム・クックと一緒
  2. 自己紹介補足 • 古めのエンジニア  コンピュータ歴約30年  Linuxは0.99から • 実はデューク大学のMBA •

    ITエンジニアのための英語読解講 座はじめました ティム・クックと一緒 英語ドキュメントの分からない 箇所があったら解説します http://d.hatena.ne.jp/casualstartup/20131117/it_english_grammar
  3. f f f f 関数脳の場合 1 ・・・ 2 3 100

    1 2 Fizz Buzz ・fは、数字を1つ受け取って、FizzやBuzzを返す関数
  4. f f f f 関数脳の場合 1 ・・・ 2 3 100

    1 2 Fizz Buzz ・fは、数字を1つ受け取って、FizzやBuzzを返す関数 ・配列の各要素に、関数を適用する操作が”map”
  5. JavaScriptで書く var f = function (x) { if (x %

    15 === 0) return 'FizzBuzz'; if (x % 5 === 0) return 'Buzz'; if (x % 3 === 0 ) return 'Fizz'; return x; } [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15].map(f);
  6. JavaScriptで書く var f = function (x) { if (x %

    15 === 0) return 'FizzBuzz'; if (x % 5 === 0) return 'Buzz'; if (x % 3 === 0 ) return 'Fizz'; return x; } [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15].map(f); ECMA Script 5.1以降