给定以下对象:
let data = { id: 1,
pets: [
{
name: "",
myPets: [
{
name: ""
breed: ""
},
{
name: "Jack"
breed: "poodle"
}
]
]
}
寻找一种更简洁的方式编写以下代码,以检查是否至少有一条记录在myPets数组中分配了宠物名。
我已经使用了两个嵌套的.maps
,但不确定我是否可以用.filter
完成下面的任务,因为不确定如何使用.filter
?
data.pets.map((pet) => {
if (pet.myPets.length > 0) {
pet.myPets.map((myPet) => {
if (myPet.name) {
console.log("Pet name found");
} else {
console.log("Pet name not found");
});
}
});
1条答案
按热度按时间hk8txs481#
你可以使用
some()
方法代替嵌套的map和if语句来检查myPets
数组中是否至少有一个记录被分配了宠物名。检查是否存在
pet
对象,其myPets
数组至少包含一个具有真实名称属性的对象,如果为真,则记录“已找到宠物名称”,否则记录“未找到宠物名称”。