首页 > 解决方案 > 在 React 中,如何使用“map”将对象数组转换为新的对象数组?

问题描述

我有一个关于我的 React 16.10.0 的简单问题。如何将我的数组转换为另一个对象数组?我有一组具有属性的对象

id
name

我想将该数组转换为另一个具有属性的数组

id
text

所以我尝试了

class MyComponent extends React.Component {
  constructor(props) {
    super(props);
     
    const tags = props.values.map(result => 
      {
        id: result.id,
        text: result.name
      });

但编译器抱怨“;” 预计在“文本:”行上。

标签: javascriptarraysreactjsfunctiontransform

解决方案


Javascript 将 解释{ ... }为代码块而不是对象文字。一个简单的解决方法是在对象周围添加括号,如下所示:

class MyComponent extends React.Component {
    constructor(props) {
        super(props);

        const tags = props.values.map(result => 
            ({
                id: result.id,
                text: result.name
            }));

推荐阅读