CyrefJS
CCyrefJS
EN
بازگشت به مستندات
آرایه/از نسخه 1.38.0

groupBy

عناصر یک آرایه را با استفاده از مقدار یک property مشخص از هر آبجکت، در گروه‌های مختلف دسته‌بندی می‌کند.

groupBy(array, key):Record<string, T[]>

پارامترها

arrayT[]الزامی

آرایه‌ای از آبجکت‌ها که عناصر آن باید گروه‌بندی شوند.

keyKالزامی

کلید property که مقدار آن برای تعیین گروه هر عنصر استفاده می‌شود.

مقدار بازگشتی

Record<string, T[]>

یک آبجکت که هر property آن نمایانگر یک گروه است و عناصر متعلق به آن گروه را در قالب یک آرایه نگه می‌دارد.

مثال‌ها

01

استفاده پایه

آبجکت‌ها را بر اساس مقدار property مشخص‌شده گروه‌بندی می‌کند.

TypeScript
import { groupBy } from "@cyref/js";

const users = [
  { name: "Amir", role: "developer" },
  { name: "Sara", role: "designer" },
  { name: "Reza", role: "developer" },
];

const result = groupBy(users, "role");

console.log(result);
// {
//   developer: [
//     { name: "Amir", role: "developer" },
//     { name: "Reza", role: "developer" },
//   ],
//   designer: [
//     { name: "Sara", role: "designer" },
//   ],
// }
02

گروه‌بندی بر اساس دسته‌بندی

کلید می‌تواند هر property موجود در نوع آبجکت باشد.

TypeScript
import { groupBy } from "@cyref/js";

const products = [
  { name: "Laptop", category: "electronics" },
  { name: "Phone", category: "electronics" },
  { name: "T-Shirt", category: "clothing" },
];

const result = groupBy(products, "category");

console.log(result);
// {
//   electronics: [
//     { name: "Laptop", category: "electronics" },
//     { name: "Phone", category: "electronics" },
//   ],
//   clothing: [
//     { name: "T-Shirt", category: "clothing" },
//   ],
// }
03

گروه‌های تک‌عضوی

مقادیر که فقط یک‌بار تکرار شده‌اند، گروه‌هایی شامل یک عنصر ایجاد می‌کنند.

TypeScript
import { groupBy } from "@cyref/js";

const items = [
  { id: 1, type: "a" },
  { id: 2, type: "b" },
  { id: 3, type: "a" },
];

const result = groupBy(items, "type");

console.log(result);
// {
//   a: [
//     { id: 1, type: "a" },
//     { id: 3, type: "a" },
//   ],
//   b: [
//     { id: 2, type: "b" },
//   ],
// }
04

آرایه خالی

یک آرایه ورودی خالی، یک آبجکت خالی برمی‌گرداند.

TypeScript
import { groupBy } from "@cyref/js";

const result = groupBy([], "type");

console.log(result);
// {}
ساخته شده با@cyref/js·مستندات رسمی