一段时间以来,我一直在尝试过滤对象数组,但我似乎无法真正掌握它。虽然我通常最终都会得到可以工作的代码,但对我来说它看起来并不像优雅的代码。因此,我非常感谢代码审查和一些提示!
示例: 我目前正在为一家在线商店开发此示例,我需要根据 id 从对象数组中检索产品详细信息。
这是我的辅助函数:
function getItemDetails(id) {
var getCategory = shelf.filter(obj => obj.articleList.some(cat => cat.id === id));
var getArticleList = getCategory[0].articleList;
var getItem = getArticleList.filter(item => item.id == id);
return getItem
}
步骤:在第一步中,我尝试过滤数组,但它会返回相应项目的shelf整个数组。articleList
因此,我用相同的标准再次过滤了结果,它有效,但对我来说它看起来非常多余。
这是数据的示例:
const shelf = [{
"categoryPrice": "2",
"categoryTitle": "Flyer",
"articleList": [{
"id": "1",
"articleTitle": "Green",
}, {
"id": "2",
"articleTitle": "Blue",
}],
}, {
"categoryPrice": "3",
"categoryTitle": "Post card",
"articleList": [{
"id": "3",
"articleTitle": "Purple"
}, {
"id": "4",
"articleTitle": "Yellow",
}]
}]
烙印99
RISEBY
波斯汪
相关分类