Object.unobserve()

Obsolète
Cette fonctionnalité est obsolète. Bien qu'encore supportée par des navigateurs, son utilisation est découragée pour tout nouveau projet. Évitez de l'utiliser.

La méthode Object.unobserve() est utilisée pour retirer des observateurs placés avec Object.observe(). Cette méthode et l'API à laquelle elle appartient ont été dépréciées et retirées des navigateurs. À la place, il est préférable d'utiliser l'objet Proxy.

Syntaxe

Object.unobserve(obj, callback)

Paramètres

obj
L'objet qu'on souhaite arrêter d'observer.
callback
La référence vers l'observateur qu'on souhaite arrêter d'appeler à chaque fois qu'une modification est apportée à obj.

Valeur de retour

L'objet qui n'est plus observé.

Description

Object.unobserve() doit être appelé après Object.observe() afin de retirer un observateur d'un objet.

La fonction de rappel (callback) doit être une référence à la fonction et non une fonction anonyme. En effet, c'est cette référence qui sera utilisée pour retirer l'observateur précédemment placé. Appeler Object.unobserve() avec une fonction anonyme n'aura aucun effet, cela ne retirera aucun observateur.

Exemples

Arrêter l'observation un objet

var obj = {
  toto: 0,
  truc: 1
};

var observer = function(changements) {
  console.log(changements);
}

Object.observe(obj, observer);
​
obj.nouvelleProp = 2;
// [{name: 'nouvelleProp', object: <obj>, type: 'add'}]

Object.unobserve(obj, observer);

obj.toto = 1;
// La fonction callback n'a pas été appelée

Utiliser une fonction anonyme

var personne = {
  name : 'Ahmed',
  age : 25
};

Object.observe(personne, function (changements) {
  console.log(changements);
});

personne.age = 40; 
// [{name: 'age', object: <obj>, oldValue: 25, type: 'update'}]

Object.unobserve(personne, function (changements) {
  console.log(changements);
});

personne.age = 63;
// [{name: 'age', object: <obj>, oldValue: 40, type: 'update'}]
// La fonction callback est toujours appelée

Specifications

Proposition de spécification (strawman proposal).

Compatibilité des navigateurs

Fonctionnalité Chrome Firefox (Gecko) Internet Explorer Opera Safari
Support simple 36 Pas de support Pas de support 23 Pas de support
Fonctionnalité Android Chrome pour Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Support simple Pas de support 36 Pas de support Pas de support 23 Pas de support

Voir aussi

Étiquettes et contributeurs liés au document

 Contributeurs à cette page : SphinxKnight
 Dernière mise à jour par : SphinxKnight,