首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Ramda将对象映射转换为数组?

如何使用Ramda将对象映射转换为数组?
EN

Stack Overflow用户
提问于 2019-04-24 11:06:54
回答 1查看 2.1K关注 0票数 3

我想从以下对象中转换出来:

代码语言:javascript
复制
{
  'id-1': { prop: 'val1' },
  'id-2': { prop: 'val2' },
}

若要排列:

代码语言:javascript
复制
[
  { id: 'id-1', prop: 'val1' },
  { id: 'id-2', prop: 'val2' },
]

我迄今所做的(起作用):

代码语言:javascript
复制
R.pipe(
  R.toPairs,
  R.map(([id, props]) => ({
    id,
    ...props,
  }))
)

我只想用兰达解决-如果可能的话。

EN

回答 1

Stack Overflow用户

发布于 2019-04-26 15:51:36

这个怎么样?可能不那么冗长了!

代码语言:javascript
复制
const toArray = R.pipe(
  R.toPairs,
  R.map(
    R.apply(R.assoc('id')),
  ),
);

const data = {
  'id-1': { prop: 'val1' },
  'id-2': { prop: 'val2' },
};

console.log('result', toArray(data));
代码语言:javascript
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/ramda/0.26.1/ramda.js"></script>

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55828624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档