跳到主要内容

Pure Function

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

为什么重要

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

项目中的实现

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

各函数示例

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...

什么时候优先用

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