Suc*_*ode 2 javascript ramda.js
我想知道是否有更好的方法可以做到这一点:
var books = [
{
title: 'Some Book',
author: {
firstName: 'John',
lastName: 'Doe'
}
},
{
title: 'Another Book',
author: {
firstName: 'Jane',
lastName: 'Smith'
}
}
];
var getNames = R.pipe(
R.prop('author'),
R.props(['firstName', 'lastName']),
R.join(' ')
);
console.log(R.map(getNames, books));
Run Code Online (Sandbox Code Playgroud)
因此,基本上,我试图通过将两个属性组合在一起来获得全名。这行得通,但是我想知道是否有更好(更短)的方法来执行此操作Ramda?我仔细阅读了文档,但是有些功能我还不太了解。所以这就是为什么我在这里问.. :)
提琴:https ://jsbin.com/jidiwejatu/edit ? js,控制台
-------------------编辑-----------------
这是一个简单的示例,但是如果我必须合并来自不同路径的属性,那会变得更加复杂,因为我将不得不使用它R.path来获取每个属性。我对吗?
您可以使用juxt(在v0.19.0中添加)从对象获取所需数组:
var getNames = R.pipe(
R.juxt([
R.path(['author', 'firstName']),
R.path(['author', 'lastName'])
]),
R.join(' ')
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
634 次 |
| 最近记录: |