Преобразование Javascript Отсутствующие объекты

Привет, я трансформирую предметы

Я написал следующую программу, чтобы добавить новое имя в массив

Если вы посмотрите в результатеEvents, в результате отсутствует categoryName и name.

const result2 = {
    "resultedEvents": [
        {
            "categoryName": "Football",
            "name": "Arsenal vs Aston Villa",
            "resultedMarkets": [
                {
                    "name": "Asian Handicap",
                },
                
      ]
    },
        {
            "categoryName": "Football",
            "name": "Arsenal vs Aston Villa (Live)",
            "resultedMarkets": [
                {
                    "name": "Asian Handicap -0.5 (1-3)",
        }
      ]
    }
    ]
}

const data2= result2.resultedEvents.map(items => {
    const newResult = items.resultedMarkets.map(function (item) {
      const newName = item.name.replace(/( -?\d+([.,]\d+)?)/g, "");
      return {...item,  newName};
    })
    return {  resultedMarkets: newResult  }
  }
);

console.info(data2)

Выше программа дает мне следующее

Output

[
    {
        "resultedMarkets": [
            {
                "name": "Asian Handicap",
                "newName": "Asian Handicap"
            }
        ]
    },
    {
        "resultedMarkets": [
            {
                "name": "Asian Handicap -0.5 (1-3)",
                "newName": "Asian Handicap (1-3)"
            }
        ]
    }
]

Expected

{
    "resultedEvents": [{
            "categoryName": "Football",
            "name": "Arsenal vs Aston Villa",
            "resultedMarkets": [{
                    "name": "Asian Handicap",
                    "newName": "Asian Handicap"
                }

            ]
        },
        {
            "categoryName": "Football",
            "name": "Arsenal vs Aston Villa (Live)",
            "resultedMarkets": [{
                "name": "Asian Handicap -0.5 (1-3)",
                "newName": "Asian Handicap (1-3)"
            }]
        }
    ]
}

Пожалуйста, помогите мне решить эту проблему, я просто хочу добавить новое имя в результат, остальное должно быть как есть

Имейте в виду, что вы используете обычные объекты JS, а не JSON.

evolutionxbox 06.05.2022 15:38
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
1
31
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

ты возвращаешься только resultedMarkets в свой внешний map

просто добавьте ...items вот так

const result2 = {
    "resultedEvents": [
        {
            "categoryName": "Football",
            "name": "Arsenal vs Aston Villa",
            "resultedMarkets": [
                {
                    "name": "Asian Handicap",
                },
                
      ]
    },
        {
            "categoryName": "Football",
            "name": "Arsenal vs Aston Villa (Live)",
            "resultedMarkets": [
                {
                    "name": "Asian Handicap -0.5 (1-3)",
        }
      ]
    }
    ]
}

const data2= result2.resultedEvents.map(items => {
    const newResult = items.resultedMarkets.map( item => {
      const newName = item.name.replace(/( -?\d+([.,]\d+)?)/g, "");
      return {...item,  newName};
    })
    return {...items,  resultedMarkets: newResult  }
  }
);

console.info(data2)

Другие вопросы по теме