在Ramda中是否有R.notEquals等价物?

时间:2017-08-18 01:16:21

标签: javascript functional-programming ramda.js

在Ramda中我可以做类似下面的事情(这只是假设的代码,仅用于说明我搜索的解决方案)

const highest = function(attribute) {
  switch(attribute){
    case 'score':
      return 'John'
  }
}

const hasHighestScore = R.compose(
  R.equals,
  R.toLower,
  highest
)('score')

hasHighestScore('john') // true

是否存在R.equals的等效值,它返回相反的值,但与R.equals的作用相同?

这样的假设代码可以起作用:

const hasNotHighestScore = R.compose(
      R.notEquals,
      R.toLower,
      highest
    )('score')

显然我可以反转先前的结果

const doesNotHaveHighestScore = x => !hasHighestScore(x)

但是我想知道是否有像R.notEquals这样的东西,或者我自己可以创造它?感谢。

1 个答案:

答案 0 :(得分:1)

考虑以下事项(我在阅读评论之前写了这个,说实话。我不知道为什么这个人不只是回答):

const notHasHighestScore = R.compose(
  R.complement,
  R.equals,
  R.toLower,
  highest
)('score')