JavaScript 通过对象属性计算对象数组中唯一元素的数量?
javascriptweb developmentfront end technologyobject oriented programming更新于 2024/1/3 3:56:17
假设,我们有以下对象数组,其中包含有关在餐厅下达的订单的数据 −
const orders = [
{table_id: 3, food_id: 5},
{table_id: 4, food_id: 2},
{table_id: 1, food_id: 6},
{table_id: 3, food_id: 4},
{table_id: 4, food_id: 6},
];
我们需要编写一个 JavaScript 函数来接收一个这样的数组。我们的函数应该计算数组中唯一 table_id 属性的数量(即订单预订的唯一桌子的数量)。
以及唯一 food_id 属性的数量(即订购的唯一食物菜肴的数量)。
示例
const orders = [
{table_id: 3, food_id: 5},
{table_id: 4, food_id: 2},
{table_id: 1, food_id: 6},
{table_id: 3, food_id: 4},
{table_id: 4, food_id: 6},
];
const countUniques = (orders = []) => {
const tableObj = {}, foodObj = {};
orders.forEach(el => {
tableObj[el.table_id] = null;
foodObj[el.food_id] = null;
});
const tableUniqueIDs = Object.keys(tableObj).length;
const foodUniqueIDs = Object.keys(foodObj).length;
return {
tableUniqueIDs, foodUniqueIDs
};
};
console.log(countUniques(orders));
输出
控制台中的输出将是 −
{ tableUniqueIDs: 3, foodUniqueIDs: 4 }
相关文章
有用资源
javascript 参考教程 - 该教程包含有关 javascript 的更多信息:https://www.cainiaomax.com/javascript/

