#javascript #reactjs #object
#javascript #reactjs #объект
Вопрос:
у меня есть 2 объекта
const size = shoppingCart.map((el) => ({size: el.size}));
Первый — список фильтруемых продуктов:
const filteredProducts = [
{
description: "Material: 100% cottonnCare instructions: Do not tumble dry, machine wash at 30 ° C, machine wash on gentle cycle",
id: "80005397",
image: {url: 'h,ttps://www.datocms-assets.com/59095/1638273249-spodnie.png'},
price: 32.8,
title: " Pier One Cargo"
}
]
И второй, который имеет выбранный размер:
const selectedSize = [
{
size: 'L'
}
]
Я должен объединить эти 2 объекта в один вот так:
const filteredProducts = [
{
description: "Material: 100% cottonnCare instructions: Do not tumble dry, machine wash at 30 ° C, machine wash on gentle cycle",
id: "80005397",
image: {url: 'h,ttps://www.datocms-assets.com/59095/1638273249-spodnie.png'},
price: 32.8,
title: " Pier One Cargo",
size: 'L'
}
]
Комментарии:
1.
filteredProducts.size = selectedSize.size
??2. Вы, вероятно, ищете
Object.assign
3. оба массива всегда имеют одинаковую длину?
4. Да, его всегда одинаковой длины
5. вопрос неясен. Всегда ли оба массива имеют одинаковый размер? Или эти массивы содержат только один объект, каждый из которых вы хотите объединить?
Ответ №1:
Вы можете использовать функцию map() и оператор spread:
const filteredProductsWithSize = filteredProducts.map((product, i) => ({
...product,
...selectedSize[i]
}));