Object.unobserve()

Этот перевод не завершён. Пожалуйста, помогите перевести эту статью с английского

Вышла из употребления
Эта возможность вышла из употребления. Хотя она может продолжать работать в некоторых браузерах, её использование не рекомендуется, поскольку она может быть удалена в любое время. Старайтесь избегать её использования.

Метод Object.unobserve() удаляет наблюдатель, который был добавлен с помощью Object.observe(). Вы можете использовать Proxy вместо данного метода.

Синтаксис

Object.unobserve(obj, callback)

Параметры

obj
Объект, за которым необходимо прекратить наблюдение.
callback
Ссылка на наблюдатель, который нужно остановить на obj.

Возаращаемое значение

Указанный объект.

Описание

Object.unobserve() вызывается после Object.observe(), чтобы удалить наблюдатель на объекте.

В callback нужно передавать ссылку на функцию, которая не является анонимной. Если вызвать Object.unobserve() с анонмной функцией в callback, то ни один наблюдатель не будет удалён.

Примеры

Удаление наблюдателя с объекта

var obj = {
  foo: 0,
  bar: 1
};

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

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

Object.unobserve(obj, observer);

obj.foo = 1;
// callback не был вызван

Вызов с анонимной функцией

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

Object.observe(person, function(changes) {
  console.log(changes);
});

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

Object.unobserve(person, function(changes) {
  console.log(changes);
});

person.age = 63;
// [{name: 'age', object: <obj>, oldValue: 40, type: 'update'}]
// callback был вызван

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

Strawman proposal specification.

Browser compatibility

No compatibility data found. Please contribute data for "javascript.builtins.Object.unobserve" (depth: 1) to the MDN compatibility data repository.

See also