JavaScript 中的函数组合

发布: (2025年12月11日 GMT+8 02:33)
2 min read
原文: Dev.to

Source: Dev.to

Introduction

函数式组合(也称为函数管道)让你可以把简单函数串联起来,从而编写更易读、模块化的代码。

Defining Simple Functions

const double   = x => x * 2;
const minusOne = x => x - 1;
const square   = x => x * x;
  • double(x): 乘以 2
  • minusOne(x): 减去 1
  • square(x): 将一个数与自身相乘
  • Math.sqrt: 内置函数,返回平方根

Building the Function Pipeline

将函数引用存入数组——此时并未调用它们。

const functions = [
  square,
  double,
  minusOne,
  Math.sqrt,
];

Executing the Pipeline

从初始值开始,按顺序应用每个函数。

let result = 42; // 起始数字

for (const fn of functions) {
  result = fn(result);
}

循环的工作方式:

  1. 取当前的 result
  2. 将其传入下一个函数 (fn)。
  3. 将输出再存回 result

这一系列调用等价于:

result = square(42);
result = double(result);
result = minusOne(result);
result = Math.sqrt(result);

Step‑by‑Step Calculation

StepOperationResult
1square(42)1764
2double(1764)3528
3minusOne(3528)3527
4Math.sqrt(3527)≈ 59.380

Full Code Example

const double   = x => x * 2;
const minusOne = x => x - 1;
const square   = x => x * x;

const functions = [
  square,
  double,
  minusOne,
  Math.sqrt,
];

let result = 42; // 起始数字

for (const fn of functions) {
  result = fn(result);
}

console.log('The answer is ' + result);
// The answer is 59.380217...
Back to Blog

相关文章

阅读更多 »

JavaScript 中的一等函数

介绍 对于学习 JavaScript 的开发者来说,术语 first‑class functions 在讨论和文档中经常出现。在 JavaScript 中,函数 a...

JavaScript 中的函数

什么是函数?函数是一段用于执行特定任务的代码块。只有在被调用时才会运行。javascript function add { console.log'He...