JavaScript | Что такое метод? — efim360.ru

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

Поделись записью