Методы объектов JavaScript

Пример:


var person = {
    firstName: "John",
    lastName : "Doe",
    id       : 5566,
    fullName : function() {
        return this.firstName + " " + this.lastName;
}; 

Ключевое слово this

В определении функции ключевое слово this ссылается на "владельца" функции.

Так, в примере выше this это объект person, который "владеет" функцией fullName.

Другими словами, this.firstName означает свойство firstName данного объекта.

Подробнее о ключевом слове this см. главу Ключевое слово this

Методы JavaScript

Методы JavaScript это действия, которые можно выполнить с объектами.

Метод JavaScript это свойство, содержащее определение функции.

Свойство Значение
firstName John
lastName Doe
age 50
eyeColor blue
fullName function() { return this.firstName + " " + this.lastName; }

Методы это функции, хранящиеся как свойства объекта.

Обращение к методам объекта

Чтобы вызвать метод объекта, используется следующий синтаксис:


имяОбъекта.имяМетода()

Обычно обращение fullName() указывает на метод объекта person, а fullName на его свойство.

Свойство fullName будет выполняться (как функция), если его вызвать с круглыми скобками ().

В следующем примере мы обращаемся к методу fullName() объекта person:


name = person.fullName();

Если вызвать свойство fullName, без круглых скобок (), то будет возвращено определение функции:


name = person.fullName;

Использование встроенных методов

В следующем примере используется метод toUpperCase() объекта String, чтобы преобразовать текст в верхний регистр:


var message = "Hello world!";
var x = message.toUpperCase();

После выполнения кода этого примера, значением переменной x будет строка "HELLO WORLD!".

Добавление методов в объект

Добавить новый метод в объект очень просто:


person.name = function () {
    return this.firstName + " " + this.lastName;
};