这是一个名为functionA的高阶函数示例,它接受customValue作为输入并返回一个函数。该函数获取一个输入并使用自定义值来详细说明结果:
let functionA = (customValue) => {
let value = customValue || 1;
return input => input * value;
};
以下是一些结果:
functionA()(4)
// => returns 4
functionA(2)(4)
// => returns 8
functionA(3)(4)
// => returns 12
functionA(4)(4)
// => returns 16
函数A返回的函数可以被认为是纯函数吗?
更新: 上面的示例仅使用数字输入。如@CRice所述,当customValue是常量且没有内部状态(例如类)时,返回的函数才可被视为纯函数。
number
(或现在的 BigInt) - 参见 CRice 的答案 - 那么它是纯粹的。 - Ry-functionA
也应该被视为纯函数。 - Bergi