函數的合成與柯里化

函數的合成

若是一個值要通過多個函數,才能變成另一個值,就能夠把全部中間步驟合併成一個函數,這叫作"函數的合成"(compose)。segmentfault

const compose = function (f, g) {
  return function (x) {
    return f(g(x));
  };
}

柯里化

所謂"柯里化",就是把一個多參數的函數,轉化爲單參數函數。函數

// 柯里化以前
function add(x, y) {
  return x + y;
}

add(1, 2) // 3

// 柯里化以後
function addX(y) {
  return function (x) {
    return x + y;
  };
}

addX(2)(1) // 3

參考連接:
JS中的柯里化 及 精巧的自動柯里化實現code

相關文章
相關標籤/搜索