将数组 属性 添加到现有对象数组
Adding an array property to an existing array of objects
我正在尝试将星期几添加到现有的对象数组中
我过滤了我的数组,只提供了 7 个结果。对于我取回的每个对象,我想为 Day 添加一个 属性:“Sunday”<- 这是一个示例日,我需要所有 7 个,感觉可能需要每个外观,但我不能算了吧
let weekdays = { day: 'Monday', day: 'Tuesday', day: 'Wednesday', day: 'Thursday', day: 'Friday', day: 'Saturday', day: 'Sunday' }
const weekdayRecipes = props.recipes.map(recipe => ({ ...recipe, ...weekdays }))
以上是我试过的方法,但没有用
一个对象中不能有多个具有相同键的属性。每个键都必须是唯一的。看看这个例子:
let weekdays = { day: 'Monday', day: 'Tuesday', day: 'Wednesday' }; // ...
console.log(weekdays.day);
您希望此代码段记录什么?周一?周三?它实际上会记录星期三,但那是因为其他两个属性(星期一和星期二)被最后一个 属性 覆盖了。你需要一个数组。
您可以使用仅包含工作日的简单数组,或者如果您需要更多,请使用对象数组:
// Simple array
let weekdays = ['Monday', 'Tuesday', 'Wednesday'];
console.log(weekdays[0]); // Monday
// ... or an array of objects
let weekdays = [{ weekday: 'Monday' }, { weekday: 'Tuesday' }, weekday: 'Wednesday' }];
console.log(weekdays[0].weekday) // Monday
如果我没理解错的话,您现在想为每个结果添加一个工作日到 props.recipes
数组中。使用第一个解决方案(简单数组),它看起来像这样:
let weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
let weekdayRecipes = props.recipes.map((recipe, index) => ({ ...recipe, weekday: weekdays[index] }));
我正在尝试将星期几添加到现有的对象数组中
我过滤了我的数组,只提供了 7 个结果。对于我取回的每个对象,我想为 Day 添加一个 属性:“Sunday”<- 这是一个示例日,我需要所有 7 个,感觉可能需要每个外观,但我不能算了吧
let weekdays = { day: 'Monday', day: 'Tuesday', day: 'Wednesday', day: 'Thursday', day: 'Friday', day: 'Saturday', day: 'Sunday' }
const weekdayRecipes = props.recipes.map(recipe => ({ ...recipe, ...weekdays }))
以上是我试过的方法,但没有用
一个对象中不能有多个具有相同键的属性。每个键都必须是唯一的。看看这个例子:
let weekdays = { day: 'Monday', day: 'Tuesday', day: 'Wednesday' }; // ...
console.log(weekdays.day);
您希望此代码段记录什么?周一?周三?它实际上会记录星期三,但那是因为其他两个属性(星期一和星期二)被最后一个 属性 覆盖了。你需要一个数组。
您可以使用仅包含工作日的简单数组,或者如果您需要更多,请使用对象数组:
// Simple array
let weekdays = ['Monday', 'Tuesday', 'Wednesday'];
console.log(weekdays[0]); // Monday
// ... or an array of objects
let weekdays = [{ weekday: 'Monday' }, { weekday: 'Tuesday' }, weekday: 'Wednesday' }];
console.log(weekdays[0].weekday) // Monday
如果我没理解错的话,您现在想为每个结果添加一个工作日到 props.recipes
数组中。使用第一个解决方案(简单数组),它看起来像这样:
let weekdays = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
let weekdayRecipes = props.recipes.map((recipe, index) => ({ ...recipe, weekday: weekdays[index] }));