Torus Solutions 改

Ello 2018-01-28T15:20:40.104Z

ES6 の記法を使うと、高階関数がこんな風にかける。

var f = a => b => c => {a[b] = c}

で、こんな風に呼び出す。

> var obj = {x: 1, y: 2}
undefined
> obj
{ x: 1, y: 2 }
> f(obj)("x")(100)
undefined
> obj
{ x: 100, y: 2 }

途中に非同期関数をかますこともできる。

var f = a => b => async c => {a[b] = await someAsyncFun(c)}

同じことは古い JavaScript と Promise を使ってもかけるけど、シンタックスシュガーのおかげでカリー化が捗る。