是否有一个ramda函数接受函数参数并将其传递给该范围内调用的下一个函数?
我希望在不使用箭头功能的情况下实现这样的目标:
R.allPass([x => R.not(R.isEmpty(x)), R.isNil])(data)
它看起来可能类似于这个:
const passArgument = (func, func2) => arg => func(func2(arg));
R.allPass([passArgument(R.not, R.isEmpty), R.isNil])(data)
答案 0 :(得分:2)
R.compose
是你所追求的功能。
R.allPass([R.compose(R.not, R.isEmpty), R.isNil])(data)
从左到右也有R.pipe
组合功能。
对于此特定示例,您可能也对R.both
和R.complement
感兴趣,可以将其实现为:
R.both(R.complement(R.isEmpty), R.isNil)
我不完全确定你是否曾找到同时为null
/ undefined
且非空的内容,但为此要评估为true
。