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/fill/index.html | 155 --------------------- 1 file changed, 155 deletions(-) delete mode 100644 files/uk/web/javascript/reference/global_objects/array/fill/index.html (limited to 'files/uk/web/javascript/reference/global_objects/array/fill') diff --git a/files/uk/web/javascript/reference/global_objects/array/fill/index.html b/files/uk/web/javascript/reference/global_objects/array/fill/index.html deleted file mode 100644 index 666360dc76..0000000000 --- a/files/uk/web/javascript/reference/global_objects/array/fill/index.html +++ /dev/null @@ -1,155 +0,0 @@ ---- -title: Array.prototype.fill() -slug: Web/JavaScript/Reference/Global_Objects/Array/fill -tags: - - Array - - ECMAScript6 - - JavaScript - - Масив - - метод -translation_of: Web/JavaScript/Reference/Global_Objects/Array/fill ---- -
{{JSRef}}
- -

Метод fill() заповнює (змінює) всі елементи масиву з початкового індексу (за замовчуванням нуль) до кінцевого індексу (за замовчуванням довжина масиву) статичним значенням. Метод повертає змінений масив.

- -
{{EmbedInteractiveExample("pages/js/array-fill.html")}}
- - - -

Синтаксис

- -
arr.fill(value[, start[, end]])
-
- -

Параметри

- -
-
value
-
Величина, якою потрібно заповнити масив.
-
start {{optional_inline}}
-
Початковий індекс, за замовчуванням 0.
-
end {{optional_inline}}
-
Кінцевий індекс, за замовчуванням this.length.
-
- -

Значення, яке повертається

- -

Змінений масив.

- -

Опис

- -

Метод fill приймає три аргументи: value, start та end. Аргументи start та end є необов'язковими й за замовчуванням дорівнюють 0 та значенню length об'єкта this.

- -

Якщо значення start є від'ємним, воно сприймається як length+start, де length - це довжина масиву. Якщо значення end є від'ємним, воно сприймається як length+end.

- -

Метод fill є навмисно загальним, він не вимагає, щоб значенням this був об'єкт Array.

- -

fill є методом модифікації, він змінить сам об'єкт this та поверне його, а не просто його копію.

- -

Коли у fill передається об'єкт, він копіює посилання та заповнює масив посиланнями на цей об'єкт.

- -

Приклади

- -
[1, 2, 3].fill(4);               // [4, 4, 4]
-[1, 2, 3].fill(4, 1);            // [1, 4, 4]
-[1, 2, 3].fill(4, 1, 2);         // [1, 4, 3]
-[1, 2, 3].fill(4, 1, 1);         // [1, 2, 3]
-[1, 2, 3].fill(4, 3, 3);         // [1, 2, 3]
-[1, 2, 3].fill(4, -3, -2);       // [4, 2, 3]
-[1, 2, 3].fill(4, NaN, NaN);     // [1, 2, 3]
-[1, 2, 3].fill(4, 3, 5);         // [1, 2, 3]
-Array(3).fill(4);                // [4, 4, 4]
-[].fill.call({ length: 3 }, 4);  // {0: 4, 1: 4, 2: 4, length: 3}
-
-// Об'єкти за посиланнями.
-var arr = Array(3).fill({}) // [{}, {}, {}];
-arr[0].hi = "привіт"; // [{ hi: "привіт" }, { hi: "привіт" }, { hi: "привіт" }]
-
- -

Поліфіл

- -
if (!Array.prototype.fill) {
-  Object.defineProperty(Array.prototype, 'fill', {
-    value: function(value) {
-
-      // Кроки 1-2.
-      if (this == null) {
-        throw new TypeError('this is null or not defined');
-      }
-
-      var O = Object(this);
-
-      // Кроки 3-5.
-      var len = O.length >>> 0;
-
-      // Кроки 6-7.
-      var start = arguments[1];
-      var relativeStart = start >> 0;
-
-      // Крок 8.
-      var k = relativeStart < 0 ?
-        Math.max(len + relativeStart, 0) :
-        Math.min(relativeStart, len);
-
-      // Кроки 9-10.
-      var end = arguments[2];
-      var relativeEnd = end === undefined ?
-        len : end >> 0;
-
-      // Крок 11.
-      var final = relativeEnd < 0 ?
-        Math.max(len + relativeEnd, 0) :
-        Math.min(relativeEnd, len);
-
-      // Крок 12.
-      while (k < final) {
-        O[k] = value;
-        k++;
-      }
-
-      // Крок 13.
-      return O;
-    }
-  });
-}
-
- -

Якщо вам потрібно підтримувати зовсім застарілі рушії JavaScript, які не підтримують Object.defineProperty, краще взагалі не використовувати поліфіли методів Array.prototype, оскільки ви не зможете зробити їх не перелічуваними.

- -

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

- - - - - - - - - - - - - - - - - - - -
СпецифікаціяСтатусКоментар
{{SpecName('ES2015', '#sec-array.prototype.fill', 'Array.prototype.fill')}}{{Spec2('ES2015')}}Початкове визначення.
{{SpecName('ESDraft', '#sec-array.prototype.fill', 'Array.prototype.fill')}}{{Spec2('ESDraft')}}
- -

Сумісність з веб-переглядачами

- -
- - -

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

-
- -

Див. також

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