From 95aca4b4d8fa62815d4bd412fff1a364f842814a Mon Sep 17 00:00:00 2001 From: Ryan Johnson Date: Thu, 29 Apr 2021 16:16:42 -0700 Subject: remove retired locales (#699) --- .../reference/global_objects/array/flat/index.html | 150 --------------------- 1 file changed, 150 deletions(-) delete mode 100644 files/uk/web/javascript/reference/global_objects/array/flat/index.html (limited to 'files/uk/web/javascript/reference/global_objects/array/flat/index.html') diff --git a/files/uk/web/javascript/reference/global_objects/array/flat/index.html b/files/uk/web/javascript/reference/global_objects/array/flat/index.html deleted file mode 100644 index ff20a8d058..0000000000 --- a/files/uk/web/javascript/reference/global_objects/array/flat/index.html +++ /dev/null @@ -1,150 +0,0 @@ ---- -title: Array.prototype.flat() -slug: Web/JavaScript/Reference/Global_Objects/Array/flat -tags: - - Array - - JavaScript - - Масив - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/Array/flat ---- -
{{JSRef}}
- -

Метод flat() створює новий масив який містить всі елементи вкладених масивів до вказаної глибини.

- - - - - -

Синтакс

- -
var newArray = arr.flat([depth]);
- -

Параметри

- -
-
depth {{optional_inline}}
-
Глибина, що вказує до якого рівня вкладеності масивів має відбуватись вирівнювання. За замовчуванням 1.
-
- -

Вихідне значення

- -

Новий масив, що містить елементи вкладених масивів.

- -

Приклади

- -

Вирівнювання вкладених масивів

- -
var arr1 = [1, 2, [3, 4]];
-arr1.flat();
-// [1, 2, 3, 4]
-
-var arr2 = [1, 2, [3, 4, [5, 6]]];
-arr2.flat();
-// [1, 2, 3, 4, [5, 6]]
-
-var arr3 = [1, 2, [3, 4, [5, 6]]];
-arr3.flat(2);
-// [1, 2, 3, 4, 5, 6]
-
- -

Вирівнювання і прогалини в масиві

- -

Метод flat видаляє порожні елементи масивів:

- -
var arr4 = [1, 2, , 4, 5];
-arr4.flat();
-// [1, 2, 4, 5]
-
- -

Альтернатива

- -

reduce і concat

- -
var arr1 = [1, 2, [3, 4]];
-arr1.flat();
-
-//вирівняти один рівень масиву
-arr1.reduce((acc, val) => acc.concat(val), []); // [1, 2, 3, 4]
-
-//або
-const flatSingle = arr => [].concat(...arr);
- -
//щоб здійснити глибоке вирівнювання, використовуйте рекурсію з reduce і concat
-var arr1 = [1,2,3,[1,2,3,4, [2,3,4]]];
-
-function flattenDeep(arr1) {
-   return arr1.reduce((acc, val) => Array.isArray(val) ? acc.concat(flattenDeep(val)) : acc.concat(val), []);
-}
-flattenDeep(arr1); // [1, 2, 3, 1, 2, 3, 4, 2, 3, 4]
-
- -
//глибоке вирівнювання без рекурсії, використовуючи stack
-var arr1 = [1,2,3,[1,2,3,4, [2,3,4]]];
-function flatten(input) {
-  const stack = [...input];
-  const res = [];
-  while (stack.length) {
-    // викидаємо значення зі стеку
-    const next = stack.pop();
-    if (Array.isArray(next)) {
-      // додаємо елементи масиву, не змінюючи вхідного масиву
-      stack.push(...next);
-    } else {
-      res.push(next);
-    }
-  }
-  //перевертаємо масив, щоб порядок сортування відповідав вхідному
-  return res.reverse();
-}
-flatten(arr1); // [1, 2, 3, 1, 2, 3, 4, 2, 3, 4]
- -
//глибоке вирівнювання з рекурсією
-function flatten(array) {
-  var flattend = [];
-  (function flat(array) {
-    array.forEach(function(el) {
-      if (Array.isArray(el)) flat(el);
-      else flattend.push(el);
-    });
-  })(array);
-  return flattend;
-}
- - - -

Специфікації

- - - - - - - - - - - - - - -
СпецифікаціяСтатусКоментар
Array.prototype.flat proposalFinished (4)
- -

Сумісність з браузерами

- -
- - -

{{Compat("javascript.builtins.Array.flat")}}

-
- -

Дивіться також

- - -- cgit v1.2.3-54-g00ecf