From a065e04d529da1d847b5062a12c46d916408bf32 Mon Sep 17 00:00:00 2001 From: Peter Bengtsson Date: Tue, 8 Dec 2020 21:46:22 -0500 Subject: update based on https://github.com/mdn/yari/issues/2028 --- .../global_objects/array/observe/index.html | 89 ---------------------- .../global_objects/array/unobserve/index.html | 89 ---------------------- 2 files changed, 178 deletions(-) delete mode 100644 files/uk/web/javascript/reference/global_objects/array/observe/index.html delete mode 100644 files/uk/web/javascript/reference/global_objects/array/unobserve/index.html (limited to 'files/uk/web/javascript/reference/global_objects/array') diff --git a/files/uk/web/javascript/reference/global_objects/array/observe/index.html b/files/uk/web/javascript/reference/global_objects/array/observe/index.html deleted file mode 100644 index 3e3a386c83..0000000000 --- a/files/uk/web/javascript/reference/global_objects/array/observe/index.html +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: Array.observe() -slug: Web/JavaScript/Reference/Global_Objects/Array/observe -tags: - - JavaScript - - Масив - - застарілий - - метод -translation_of: Archive/Web/JavaScript/Array.observe ---- -
{{JSRef}} {{obsolete_header}}
- -

Метод Array.observe() використовувався для асинхронного спостереження за змінами у масивах, схоже на  {{jsxref("Object.observe()")}} у об'єктах. Він надавав послідовність змін в порядку виникнення. Як і Object.observe(), він викликається з допустимим списком типів ["add", "update", "delete", "splice"]. Однак, цей API застарілий та був прибраний з переглядачів. Ви можете натомість використати більш загальний об'єкт {{jsxref("Proxy")}}.

- -

Синтаксис

- -
Array.observe(arr, callback)
- -

Параметри

- -
-
arr
-
Масив для спостереження.
-
callback
-
Функція, яка викликається кожен раз, коли відбуваються зміни, з наступним аргументом: -
-
changes
-
Масив об'єктів, кожен з яких відображає зміну. Властивості цих об'єктів змін: -
    -
  • name: Ім'я властивості, яка була змінена.
  • -
  • object: Змінений масив після того, як відбулась зміна.
  • -
  • type: Строка, що вказує тип зміни. Один з "add", "update", "delete", або "splice".
  • -
  • oldValue: Тільки для типів "update" та "delete". Значення перед зміною.
  • -
  • index: Тільки для типу "splice". Індекс, за яким відбулася зміна.
  • -
  • removed: Тільки для типу "splice". Масив видалених елементів.
  • -
  • addedCount: Тільки для типу "splice". Кількість доданих елементів.
  • -
-
-
-
-
- -

Опис

- -

Функція callback викликається кожен раз, коли у arr відбувається зміна, з масивом усіх змін у порядку, в якому вони відбувались.

- -
-

Зміни, зроблені методами масивів, такими як Array.prototype.pop(), будуть записані як "splice". Зміни, пов'язані з призначенням величин за індексом, які не змінюють довжину масиву, можуть бути записані як "update".

-
- -

Приклади

- -

Логування різних типів змін

- -
var arr = ['a', 'b', 'c'];
-
-Array.observe(arr, function(changes) {
-  console.log(changes);
-});
-
-arr[1] = 'B';
-// [{type: 'update', object: <arr>, name: '1', oldValue: 'b'}]
-
-arr[3] = 'd';
-// [{type: 'splice', object: <arr>, index: 3, removed: [], addedCount: 1}]
-
-arr.splice(1, 2, 'beta', 'gamma', 'delta');
-// [{type: 'splice', object: <arr>, index: 1, removed: ['B', 'c'], addedCount: 3}]
-
- -

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

- -

Strawman proposal specification.

- -

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

- -
- - -

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

-
- -

Див. також

- - diff --git a/files/uk/web/javascript/reference/global_objects/array/unobserve/index.html b/files/uk/web/javascript/reference/global_objects/array/unobserve/index.html deleted file mode 100644 index 308a8a01d6..0000000000 --- a/files/uk/web/javascript/reference/global_objects/array/unobserve/index.html +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: Array.unobserve() -slug: Web/JavaScript/Reference/Global_Objects/Array/unobserve -tags: - - Array - - JavaScript - - Масив - - застарілий - - метод -translation_of: Archive/Web/JavaScript/Array.unobserve ---- -
{{JSRef}} {{obsolete_header}}
- -

Метод Array.unobserve() використовувався для видалення спостерігачів, встановлених методом {{jsxref("Array.observe()")}}, але він застарів та був прибраний з переглядачів. Ви можете натомість скористатись більш загальним об'єктом {{jsxref("Proxy")}}.

- -

Синтаксис

- -
Array.unobserve(arr, callback)
- -

Параметри

- -
-
arr
-
Масив, де треба припинити спостереження.
-
callback
-
Посилання на спостерігач, який треба припинити викликати кожен раз, коли у масиві arr відбувається зміна.
-
- -

Опис

- -

Метод Array.unobserve() має викликатися після {{jsxref("Array.observe()")}}, щоб прибрати спостерігач з масиву.

- -

Параметр callback має бути посиланням на функцію, а не анонімною функцією, бо це посилання буде використано, щоб прибрати попередній спостерігач. Немає сенсу викликати Array.unobserve() з анонімною функцією зворотного виклику, вона не прибере жоден спостерігач.

- -

Приклади

- -

Припинення спостереження за масивом

- -
var arr = [1, 2, 3];
-
-var observer = function(changes) {
-  console.log(changes);
-}
-
-Array.observe(arr, observer);
-​
-arr.push(4);
-// [{type: "splice", object: <arr>, index: 3, removed:[], addedCount: 1}]
-
-Array.unobserve(arr, observer);
-
-arr.pop();
-// Функція зворотного виклику не викликалась
- -

Використання анонімної функції

- -
var persons = ['Халід', 'Ахмед', 'Мухаммед'];
-
-Array.observe(persons, function (changes) {
-  console.log(changes);
-});
-
-persons.shift();
-// [{type: "splice", object: <arr>, index: 0, removed: [ "Халід" ], addedCount: 0 }]
-
-Array.unobserve(persons, function (changes) {
-  console.log(changes);
-});
-
-persons.push('Абдулла');
-// [{type: "splice", object: <arr>, index: 2, removed: [], addedCount: 1 }]
-// Функція зворотного виклику викликатиметься завжди
-
- -

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

- -
- - -

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

-
- -

Див. також

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