2012-12-11 2 views
0

Когда я прочитал JavaScript The Definitive Guide, раздел 9.3, я столкнулся с этим:Поддерживаются ли методы класса в JavaScript?

методы класса
Эти методы, которые связаны с классом, а не с экземплярами.

Как реализовать методы класса в JavaScript?

+0

Если, «класс» вы имеете в виду функцию конструктора, то да, просто определить методы конструктора. –

+0

Итак, к чему относится термин «класс»? – Bergi

+0

@ Šime Vidas: Не на конструкторе, на прототипе конструктора. –

ответ

4

Вы можете просто создать функцию как свойство другой функции:

function MyClass() { 
} 

MyClass.someFunction = function() { }; 
+1

Поскольку JavaScript в настоящее время не имеет истинной модели ООП, это выше, чем эквивалент статического или класса метода, статические или свойства класса могут быть определены в аналогичном fashon MyClass.someProperty = "myValue"; В аналогичной заметке методы экземпляра определены в свойстве прототипа объектов, поэтому MyClass.prototype.someFunction = function() {}; это метод экземпляра и MyClass.prototype.SomeProperty = "someValue"; является свойством экземпляра. Это не единственные способы объявить эти типы функций и свойств, которые вы можете найти для объектно-ориентированного JavaScript, чтобы найти больше примеров. – HJ05

Смежные вопросы