Кастомные геттеры и сеттеры для объектов.

Простой способ отловить изменение свойства объекта или навесить дополнительные действия при изменении свойства. Небольшая заготовка для дата-биндинга или обсервинга.

var person = {
     name: "Zeus",
     _age: 50,
     get age() {
          console.log('custom getter works!');
          return this._age;
     },
     set age(value) {
          console.log('custom setter works!');
          this._age = value;
     }
}

console.log(person.age);
person.age = 20;

 

4 комментариев

  1. Если отбросить необходимость выполнения действий при доступе к полю объекта, то как насчет использования Object.observe?

    Ответить
    • Я с вами согласен, можно отлавливать и при помощи Object.observe — метода, который ждали все фронтендеры долгое время, жаль не всегда его можно использовать по соображениям кроссбраузерности.

      Ответить
  2. Тег property описывает простое поле нашего объекта, в качестве параметров указываем имя поля, его класс и имя колонки в таблице.

    Ответить

Оставить комментарий