JavaScript | Что такое метод?

JavaScript | Что такое метод?

Метод — это функция, которая является значением свойства объекта. Функция, связанная с объектом через свойство, называется методом (method).

В объектно-ориентированном языке на основе классов, как правило, состояние передается экземплярами, методы передаются классами, а наследование касается только структуры и поведения. В ECMAScript состояние и методы передаются объектами, а структура, поведение и состояние наследуются.

Хотя объекты ECMAScript по своей сути не основаны на классах, часто бывает удобно определять абстракции, подобные классам, на основе общего шаблона функций конструктора, объектов-прототипов и методов.

Примечание

Когда функция вызывается как метод объекта, объект передается функции как значение this.

 
Пример

У нас есть объект:

let myO = {a: "a", b: "b", z: function(){return this.a + this.b}}

Свойство «z» хранит в себе функцию, которая возвращает результат конкатенации строк (значений), лежащих в свойствах «a» и «b«. Функция использует в своём теле ключевое слово «this», которое определяет объект контекста вызова этой функции в качестве нашего объекта.

В результате «this» ссылается не на ГЛОБАЛЬНЫЙ объект языка JavaScript, а на тот объект, внутри которого она лежит в качестве значения свойства.

 

Пример № 2

let myO = {a: "a", b: "b", addZ: function(){return this.a += "Z"}, addR: function(){return this.a += "R"}}

 

Информационные ссылки

Стандарт ECMAScript — Раздел «4.3 ECMAScript Overview» — https://tc39.es/ecma262/#sec-ecmascript-overview

Стандарт ECMAScript — Раздел «4.4.37 method» — https://tc39.es/ecma262/#sec-method