如何解决对于循环中的每个项目,您将如何迭代并返回不同数组中的项目?
arrOfObjs =
[{type: "flower",egg: "something"},{type: "flower",egg: "something2"},{type: "notFlower",egg: "something3"},egg: "something4"}]
数组中的每个对象都有一个“类型”。每当用户点击页面上的一个项目时,就会将另一个对象添加到数组中,类型为“flower”或“notFlower”
allProperties =
["flower_style_1","flower_style_2","flower_style_3","flower_style_4","flower_style_5","flower_style_6","flower_style_7","flower_style_8"]
正如你所知道的,它本质上是flower_style_,然后是一个最多为 8 的数字。
对于 arrOfObjs 中 type = 花的每个项目,以及添加的任何新项目,都应该有一个 return 语句,其中返回的主题是 allProperties 数组中的内容。
例如,在上面的 arrOfObjs 中:
- 对于 {type: "flower",egg: "something"} => 返回 "flower_style_1"。
- 对于 {type: "flower",egg: "something2"} => 返回 "flower_style_2"。
- 不要为{type: "notFlower",egg: "something3"}返回任何内容
因为它不是“类型”:花。 - 对于 {type: "flower",egg: "something4"} => 返回 "flower_style_3"。
- 等
一旦返回 allProperties 中的所有项目,然后从开始的 flower_style_1 开始,并为 arrOfObjs 中的每个新项目返回该元素。
到目前为止,我已经编写了以下内容,这是一个通过 arrOfObjs 的 foreach 循环。
this.arrOfObjs?.forEach(arrItem => {
if (arrItem.type === 'flower') {
this.allProperties.forEach(element => {
return element;
}
}
});
但是它不起作用,我认为会有更有效的方法来实现这一目标。尤其是没有一个flower_style_数组.......
有人知道如何实现上述目标吗?
解决方法
arrOfObjs =
[{type: "flower",egg: "something"},{type: "flower",egg: "something2"},{type: "notFlower",egg: "something3"},egg: "something4"}]
allProperties =
["flower_style_1","flower_style_2","flower_style_3","flower_style_4","flower_style_5","flower_style_6","flower_style_7","flower_style_8"];
let getArray=[];
arrOfObjs?.forEach((arrItem,i) => {
if (arrItem.type === 'flower') {
getArray.push(allProperties[getArray.length]);
}
});
console.log(getArray);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。