Skip to content

Latest commit

 

History

History
39 lines (26 loc) · 1.2 KB

coalesce-factory.md

File metadata and controls

39 lines (26 loc) · 1.2 KB
标题 标签
coalesceFactory(合并函数) function,type,intermediate(函数,类型,两者之间的)

自定义一个合并函数,该函数根据给定的验证器返回第一个为 true 的参数

  • 使用 Array.prototype.find() 从提供的参数验证函数返回第一个返回 true 的参数,有效。

代码如下:

const coalesceFactory =
  valid =>
  (...args) =>
    args.find(valid);

ts 代码如下:

调用方式:

const customCoalesce = coalesceFactory(
  v => ![null, undefined, '', NaN].includes(v)
);
customCoalesce(undefined, null, NaN, '', 'Waldo'); // 'Waldo'

应用场景

以下是一个实战示例:

结果如下:

<iframe src="codes/javascript/html/coalesce-factory.html"></iframe>