CP138 · 柯里化 curry

中等前端手撕核心代码模式仅 JavaScript高阶函数闭包时限 1000 ms(参考)
题目描述

实现 curry(fn):返回 fn 的柯里化版本——累计接收参数,一旦累计个数达到 fn.length 就调用 fn 返回结果,否则继续返回等待剩余参数的函数;每次可传任意个参数。脚手架用 n 元求和函数(返回 a1 + 2·a2 + 3·a3 + …,能区分参数顺序)按给定的调用序列逐段调用。本题为「核心代码模式 · 仅 JavaScript」:模板已内置 JSON 读入与输出脚手架,只需补全指定函数。

输入描述

一行 JSON:{"arity": 参数个数 n(1 ≤ n ≤ 5), "calls": 调用序列,每项为该次传入的参数数组},保证参数总数恰为 n。

输出描述

一行:最终调用结果。