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 --- .../objets_globaux/array/observe/index.html | 90 ---------------------- .../objets_globaux/array/unobserve/index.html | 89 --------------------- 2 files changed, 179 deletions(-) delete mode 100644 files/fr/web/javascript/reference/objets_globaux/array/observe/index.html delete mode 100644 files/fr/web/javascript/reference/objets_globaux/array/unobserve/index.html (limited to 'files/fr/web/javascript/reference/objets_globaux/array') diff --git a/files/fr/web/javascript/reference/objets_globaux/array/observe/index.html b/files/fr/web/javascript/reference/objets_globaux/array/observe/index.html deleted file mode 100644 index ea02585a28..0000000000 --- a/files/fr/web/javascript/reference/objets_globaux/array/observe/index.html +++ /dev/null @@ -1,90 +0,0 @@ ---- -title: Array.observe() -slug: Web/JavaScript/Reference/Objets_globaux/Array/observe -tags: - - Array - - JavaScript - - Méthode - - Obsolete - - Reference -translation_of: Archive/Web/JavaScript/Array.observe ---- -
{{JSRef}} {{obsolete_header}}
- -

La méthode Array.observe() est utilisée afin d'observer les modifications apportées à un tableau de façon asynchrone. Elle fonctionne de la même façon que la méthode {{jsxref("Object.observe()")}} pour les objets. Cette méthode fournit un flux de changements, triés dans l'ordre dans lequel ils se sont produits. Utiliser cette méthode est équivalent à appeler {{jsxref("Object.observe()")}} avec la liste ["add", "update", "delete", "splice"] comme troisième argument. Toutefois, cette API a été dépréciée et retirée des navigateurs. Il est préférable d'utiliser l'objet {{jsxref("Proxy")}}, plus générique, à la place.

- -

Syntaxe

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

Paramètres

- -
-
arr
-
Le tableau qu'on souhaite observer.
-
callback
-
La fonction à appeler à chaque fois que des changements sont effectués. Cette fonction est appelée avec l'argument suivant : -
-
changes
-
Un tableau d'objets représentant chacun une modification. Les propriétés de ces objets sont : -
    -
  • name : Le nom de la propriété qui a été modifiée.
  • -
  • object : Le tableau modifié (une fois que la modification a été effectuée).
  • -
  • type : Une chaîne de caractères indiquant le type de modification qui a eu lieu. Elle peut valoir "add" (pour ajout), "update" (pour modification), "delete"(pour suppression) ou "splice" (pour découpage).
  • -
  • oldValue : Propriété présente uniquement lorsque le type vaut "update" ou "delete". La valeur de la propriété est la valeur avant qu'elle ait été modifiée.
  • -
  • index : Propriété présente uniquement lorsque le type vaut "splice". L'index auquel la modification a eu lieu.
  • -
  • removed : Propriété présente uniquement lorsque le type vaut "splice". Le tableau des éléments supprimés.
  • -
  • addedCount : Propriété uniquement présente lorsque le type vaut "splice". Le nombre d'éléments ajoutés.
  • -
-
-
-
-
- -

Description

- -

La fonction callback est appelée à chaque fois qu'un changement est apporté à arr, elle est appelée avec un argument qui est un tableau contenant tous les changements qui se sont produits, dans l'ordre dans lequel ils se sont produits. 

- -
-

Les modifications apportées avec les méthodes d'Array, comme Array.prototype.pop(), seront enregistrées avec le type "splice". Les modifications d'éléments qui ne modifient pas la longueur du tableau sont enregistrés en tant qu'update".

-
- -

Exemples

- -

Enregistrer les différents types de modifications

- -
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}]
-
- -

Spécifications

- -

Proposition de spécification (Strawman proposal) (en anglais).

- -

Compatibilité des navigateurs

- -
- - -

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

-
- -

Voir aussi

- - diff --git a/files/fr/web/javascript/reference/objets_globaux/array/unobserve/index.html b/files/fr/web/javascript/reference/objets_globaux/array/unobserve/index.html deleted file mode 100644 index bb32557e28..0000000000 --- a/files/fr/web/javascript/reference/objets_globaux/array/unobserve/index.html +++ /dev/null @@ -1,89 +0,0 @@ ---- -title: Array.unobserve() -slug: Web/JavaScript/Reference/Objets_globaux/Array/unobserve -tags: - - Array - - JavaScript - - Méthode - - Obsolete - - Reference -translation_of: Archive/Web/JavaScript/Array.unobserve ---- -
{{JSRef}} {{obsolete_header}}
- -

La méthode Array.unobserve() est utilisée pour retirer les observateurs placés grâce à {{jsxref("Array.observe()")}}. Cette API a été dépréciée et retirée des navigateurs. À la place, il est préférable d'utiliser l'objet {{jsxref("Proxy")}}, plus générique.

- -

Syntaxe

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

Paramètres

- -
-
arr
-
Le tableau qu'on souhaite arrêter d'observer.
-
callback
-
La référence à l'observateur dont on souhaite qu'il arrête d'être appelé à chaque changement apporté au tableau arr.
-
- -

Description

- -

Array.unobserve() doit être appelé après {{jsxref("Array.observe()")}} afin de retirer un observateur du tableau.

- -

La fonction de rappel (callback) utilisée doit être une référence à une fonction et non une fonction anonyme car c'est cette référence qui sera utilisée pour retrouver l'observateur. Ça ne sert à rien d'appeler Array.unobserve() avec une fonction anonyme comme paramètre de callback, cela ne retirera aucun observateur.

- -

Exemples

- -

Arrêter d'observer un tableau

- -
var arr = [1, 2, 3];
-
-var observateur = function(changements) {
-  console.log(changements);
-}
-
-Array.observe(arr, observateur);
-​
-arr.push(4);
-// [{type: "splice", object: <arr>, index: 3, removed:[], addedCount: 1}]
-
-Array.unobserve(arr, observateur);
-
-arr.pop();
-// Le callback n'a pas été appelé
- -

Utiliser une fonction anonyme

- -
var personnes = ['Khalid', 'Ahmed', 'Mohammed'];
-
-Array.observe(personnes, function (changements) {
-  console.log(changements);
-});
-
-personnes.shift();
-// [{type: "splice", object: <arr>, index: 0, removed: [ "Khalid" ], addedCount: 0 }]
-
-Array.unobserve(personnes, function (changements) {
-  console.log(changements);
-});
-
-personnes.push('Abdullah');
-// [{type: "splice", object: <arr>, index: 2, removed: [], addedCount: 1 }]
-// Le callback est toujours appelé
-
- -

Compatibilité des navigateurs

- -
- - -

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

-
- -

Voir aussi

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