Ramda过滤器如果不匹配

时间:2016-04-07 02:56:47

标签: javascript functional-programming ramda.js

我想过滤掉与条件不匹配的所有元素。我能够让这个工作:

var a = [1,2,3];
function notSame(x,y) {
  R.pipe(
    R.equals,
    R.not
  )
}

R.filter(
  R.pipe(
    R.equals(1),
    R.not),
  a
) // [2,3]

但我觉得必须采用更简单的方法:)

1 个答案:

答案 0 :(得分:4)

R.reject就是您之后的事情:

var isOdd = (n) => n % 2 === 1;
R.reject(isOdd, [1, 2, 3, 4]); //=> [2, 4]
R.reject(isOdd, {a: 1, b: 2, c: 3, d: 4}); //=> {b: 2, d: 4}