const data = [
{ name: "Table", color: ["green", "red", "blue"], price: 300 },
{ name: "Desk", color: ["white", "yellow", "grey"], price: 300 },
{ name: "Desk", color: ["black", "pink", "green"], price: 500 },
];
您好,我试图在对象中编写购买清单代码,但是我在这里遇到了逻辑问题,因为例如,可以有相同的对象(称为Desk),但是具有不同的数组(颜色)且价格不同。
如果我的脚本满足2个要求,如何获取有关价格的信息-例如,它将是Desk,颜色将是黑色,并且需要使用.find()函数返回第一个对象(在这种情况下:{name: “桌面”,颜色:[“白色”,“黄色”,“灰色”],价格:300})
请帮助:D问候。
您可以Array#find
搭配Array#includes
所需的颜色。
结果undefined
,如果请求不匹配,您将得到一个项目或。
const
data = [{ name: "Table", color: ["green", "red", "blue"], price: 300 }, { name: "Desk", color: ["white", "yellow", "grey"], price: 300 }, { name: "Desk", color: ["black", "pink", "green"], price: 500 }],
request = { name: 'Desk', color: 'black' },
result = data.find(({ name, color }) =>
name === request.name &&
color.includes(request.color)
);
console.log(result);
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句