在 Ramda.js 中按 属性 筛选对象
Filtering an object by property in Ramda.js
我是 Ramda.js 的新手,想知道如何根据指定的属性过滤对象。
查看 R.filter
,似乎 _.filter
仅传递对象 value 而不是 属性。比如REPL中给出的例子:
var isEven = (n, prop) => {
console.log(typeof prop);
// =>
// undefined
// undefined
// undefined
// undefined
return n % 2 === 0;
}
R.filter(isEven, {a: 1, b: 2, c: 3, d: 4}); //=> {b: 2, d: 4}
如果我有以下对象:
const obj = {a: 1, b: 2, c: 3};
我想要的结果是:
const filterProp = (x) => /* some filter fn */;
filterProp('b')(obj);
// => {a: 1, c: 3};
如何使用 Ramda 过滤对象的属性?
我是 Ramda.js 的新手,想知道如何根据指定的属性过滤对象。
查看 R.filter
,似乎 _.filter
仅传递对象 value 而不是 属性。比如REPL中给出的例子:
var isEven = (n, prop) => {
console.log(typeof prop);
// =>
// undefined
// undefined
// undefined
// undefined
return n % 2 === 0;
}
R.filter(isEven, {a: 1, b: 2, c: 3, d: 4}); //=> {b: 2, d: 4}
如果我有以下对象:
const obj = {a: 1, b: 2, c: 3};
我想要的结果是:
const filterProp = (x) => /* some filter fn */;
filterProp('b')(obj);
// => {a: 1, c: 3};
如何使用 Ramda 过滤对象的属性?