【发布时间】:2019-07-18 18:17:59
【问题描述】:
我有一个具有以下结构的对象数组:
let optionList = [
{
images: [
{
url: "test1"
},
{
url: "test2"
}
]
},
{
images: [
{
url: "test3"
},
{
url: "test4"
}
]
},
{
images: [
{
url: "test5"
},
{
url: "test6"
}
]
}
];
我还有另一个名为 imagesToDelete 的数组,具有以下值:
let imagesToDelete = ["test1", "test3", "test6"];
我的目标是根据 imagesToDelete 数组中的值从 嵌套数组 中删除 值。如果操作正确,结果如下:
let optionList = [
{
images: [
{
url: "test2"
}
]
},
{
images: [
{
url: "test4"
}
]
},
{
images: [
{
url: "test5"
}
]
}
];
以下是我当前的代码,它没有删除任何值:
optionList.filter(ol => {
let result = !ol.images.some(
image => image.url === imagesToDelete.includes(image.url)
);
return result;
});
console.log(optionList);
【问题讨论】:
-
当
images数组中的某些结果为空数组时,例如let imagesToDelete = ["test1", "test2"];时,您想做什么。该案例的输出结果是什么? -
嗨@Shidersz 在这种情况下,图像数组将是一个空数组
标签: javascript arrays object filter