JavaScript通过对象属性计算对象数组中唯一元素的数量吗?
假设我们有以下对象数组,其中包含有关在餐厅下订单的数据-
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 }热门推荐
10 祝女儿简短祝福语大全
11 大学新年祝福语简短创意
12 元旦适合的祝福语简短
13 朋友出远门祝福语简短
14 初六简短的祝福语
15 祝男孩生日祝福语简短
16 同事调离的祝福语简短
17 拜年红包的祝福语简短
18 妈妈生日祝福语简短励志