【发布时间】:2019-02-13 17:27:20
【问题描述】:
我有这个“食物”数组:
"food": [
{
"id": 11,
"name": "Kabeljaufilet",
"preis": 3.55,
"art": "mit Fisch"
},
{
"id": 12,
"name": "Spaghetti Bolognese",
"preis": 3.85,
"art": "mit Fleisch"
},
{
"id": 13,
"name": "Pizza Salami",
"preis": 3.99,
"art": "mit Fleisch"
},
现在我需要另一个名为“foodplan”的数组,我可以在其中添加、删除第一个数组中的etc. 食物。
我从未创建过实现了另一个数组的对象的数组。现在怎么办?
Foodplan 需要属性:FoodPerWeek,其中有 5 个食物对象,WeekNumber Foodplan 需要显示Food、addFood、changeFood 和deleteFood 的方法。
【问题讨论】:
-
食物对象是否保存在另一个数组中并不重要,您的
foodplan应该只是一个数组,就像您在那里的food一样 -
@user184994 以及我可以使用哪些方法从食物阵列中获取特定对象? - 这里的问题是,我需要 5 个不同的食物计划(通过添加周数)持续 5 周,我该如何处理?
-
这取决于你真正想做什么。例如,您可以使用它的索引获取一个,使用
this.food[0]将获取第一个,或者您可以使用find函数获取一个,例如this.food.find((f) => f.id === 12)将返回ID 为12 的那个 -
Foodplan 需要属性:FoodPerWeek,其中有 5 个食物对象,WeekNumber Foodplan 需要显示Food 的方法, addFood、changeFood 和 deleteFood。
-
因此您可以使用
push将项目添加到数组中。this.foodPlan.foodPerWeek.push(this.food[0])会将第一项的副本推送到food,并将其放入foodPerWeek
标签: arrays angular typescript object