Пользовательские классы (объекты) в JavaScript

// Пользовательский объект
function myObject(text) {
  // Конструктор объекта
  var context = this;
  this.text = text;
  this.title = "";
 
  // Тестовый метод
  this.testMethod = function(value) {
    console.log("testMethod: text = "+this.text+", value = "+value)
  }
 
  // Передача контекста в анонимную функцию
  this.testContext = function(complete) {
    setTimeout(function() {
      console.log("testContext: this.title = "+this.title+", context.title = "+context.title);
      complete(); // Вызов переданной функции
    });
  }
 
  // Деструктор объекта
  this.free = function() {
    for (var obj in this) {
      delete this[obj];
    }
  }
 
}
 
// Пример использования
var obj = new myObject("Привет!"); // Создание объекта
obj.testMethod(2016); // Вызов метода
obj.title = "Спасибо!"; // Установка свойства
obj.testContext(function() { // Метод с анонимной функцией
  obj.free(); // Освобождаем память
  console.log(obj); // Проверяем объект
});

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *