使用方便有用的方法,以减少代码行数,提高我们的工作效率,增加我们的摸鱼时间。
when 方法功能:返回一个函数,该函数接受一个参数,如果为真则执行传入的回调,如果为假则返回传入的参数。
实现
const when = (pred, whenTrue) => x => (pred(x) ? whenTrue(x): x)
返回一个函数,它需要一个单独的值x,并根据 pred 的结果返回适当的值。
示例
const doubleEvenNumbers = when(x => x % 2 === 0, x => x * 2);
// 如果传入的参数是偶数则返回该数的两倍,否则返回本身。
doubleEvenNumbers(2); // 4
doubleEvenNumbers(1); // 1