跳到主要内容

Pure Function

纯函数的核心是:相同输入,永远得到相同输出,并且没有副作用。

为什么重要​

  • 最容易测试
  • 最容易推理
  • 最适合组合
  • 最适合被 AI 正确生成

项目中的实现​

  • 源码: src/pureFunction.ts
  • 导出: ScoreRecord(类型)、sumNumbers、normalizeText、calculateWeightedScore

各函数示例​

sumNumbers​

import { sumNumbers } from 'wssf-kage-js';

sumNumbers([1, 2, 3, 4]); // => 10

normalizeText​

import { normalizeText } from 'wssf-kage-js';

normalizeText(' Hello World ');
// => 'hello world'

calculateWeightedScore​

import { calculateWeightedScore } from 'wssf-kage-js';

calculateWeightedScore([
{ score: 80, weight: 1 },
{ score: 90, weight: 2 }
]);
// => (80*1 + 90*2) / 3 = 86.66...

什么时候优先用​

  • 数据清洗
  • 输入标准化
  • 计算和映射逻辑