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

flattenDeep

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

flattenDeep(array):T[]

پارامترها

arrayunknown[]الزامی

آرایه‌ای شامل مقادیر و آرایه‌های تو در تو که باید flatten شوند.

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

T[]

یک آرایه جدید شامل تمام مقادیر غیرآرایه‌ای موجود در آرایه ورودی.

مثال‌ها

01

استفاده پایه

آرایه‌های تو در تو را به یک آرایه واحد تبدیل می‌کند.

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

const values = [1, [2, 3], [4, [5, 6]]];

const result = flattenDeep<number>(values);

console.log(result);
// [1, 2, 3, 4, 5, 6]
02

چند سطح تو در تو

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

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

const values = [
  1,
  [2, [3, [4, [5]]]],
];

const result = flattenDeep<number>(values);

console.log(result);
// [1, 2, 3, 4, 5]
03

با رشته‌ها

آرایه‌های تو در تو شامل رشته‌ها را به‌صورت بازگشتی به یک آرایه واحد تبدیل می‌کند.

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

const values = [
  ["JavaScript", ["TypeScript"]],
  [["Python", "Go"]],
];

const result = flattenDeep<string>(values);

console.log(result);
// ["JavaScript", "TypeScript", "Python", "Go"]
04

آرایه‌های خالی

آرایه‌های خالی نادیده گرفته می‌شوند و عنصری به نتیجه اضافه نمی‌کنند.

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

const values = [
  [],
  [1, [2]],
  [],
  [[3]],
];

const result = flattenDeep<number>(values);

console.log(result);
// [1, 2, 3]
ساخته شده با@cyref/js·مستندات رسمی