Клиентский JavaScript 1.3 Руководство

Определение методов



Определение методов

Метод это функция, ассоциированная с объектом. Вы определяете метод так же, как и стандартную функцию. Затем Вы используете для ассоциирования функции с существующим объектом следующий синтаксис:

object.methodname = function_name

где object это существующий объект, methodname это имя, присвоенное Вами методу, а function_name это имя функции.

Вы можете затем вызвать метод в контексте объекта:

object.methodname(params);

Вы можете определить методы для типа объектов, включив определение метода в функцию-конструктор. Например, Вы могли бы определить функцию форматирования и отображения свойств ранее определённых объектов car; например,

function displayCar() {
var result = "A Beautiful " + this.year + " " + this.make
      + " " + this.model
   pretty_print(result)
}

где pretty_print это функция для отображения горизонтальной линии и строки. Обратите внимание на использование this для обращения к объекту, которому принадлежит данный метод.

Вы можете сделать эту функцию методом объектов типа car, добавив оператор

this.displayCar = displayCar;

к определению типа объектов. Так, полное определение car теперь будет выглядеть:

function car(make, model, year, owner) {
   this.make = make
   this.model = model
   this.year = year
   this.owner = owner
   this.displayCar = displayCar
}

Затем можно вызвать метод displayCar для каждого объекта:

car1.displayCar()
car2.displayCar()

Это даст вывод показанный на рисунке.



Содержание раздела