Прежде чем переходить к шаблонам классов, давайте посмотрим, как функции определяются и используются в javascript.
Объявления функций и Выражения - это способы определения функций для объектов в JavaScript. Основное различие между ними - подъем. Объявления поднимаются функцией, тогда как выражения поднимаются переменной.
Выбор шаблонов определения функций полностью зависит от разработчиков и сценариев использования.
Объявление функции можно использовать или вызывать даже до его определения, но выражение функции можно вызывать только после его определения. он отображается как переменная со значением undefined.
перейдем к шаблонам занятий ...
Программисты на JavaScript могут определять класс даже без использования ключевого слова class !!! у нас есть несколько шаблонов для определения и использования концепций класса OOPS.
- Заводской шаблон функции
- Функциональный шаблон конструктора
- Паттерн на основе прототипа
- с использованием ключевого слова класса
Заводской шаблон функций: -
В этом шаблоне объекты могут быть созданы без использования ключевого слова новое. он такой же, как Конструктор Функциональный шаблон, но разница в функциях явно возвращает объект JavaScript, поэтому нет необходимости создавать объекты с использованием нового ключевого слова. любые переменные и методы, добавленные к возвращаемым объектам, являются общедоступными, если они не добавлены в возвращаемый объект, то они являются частными для класса.
Конструктор Функциональный образец: -
В этом шаблоне ключевое слово new используется для создания объектов.
переменные и методы внутри функций будут доступны только после добавления их в ключевое слово this. this ключевое слово определяет, будут ли переменные и методы внутри класса частными или общедоступными. this используется, чтобы скрыть реализацию от внешнего мира.
В приведенном выше примере переменные name, city и метод getDetails являются общедоступными, поскольку они присвоены ключевому слову this, переменной area, age и метод checkAge являются частными, потому что они не назначены этому ключевому слову. this и новые ключевые слова - суть этого шаблон.
Шаблон на основе прототипа: -
Шаблон прототипа создает новые объекты, но вместо создания неинициализированных объектов он возвращает объекты, которые инициализированы значениями, скопированными из объекта-прототипа. Шаблон прототипа также называется шаблоном свойств. переменные добавляются к ключевому слову this, оно будет доступно для методов, использующих ключевое слово this.
Методы хранятся в свойстве class.prototype.
ключевое слово класса: -
Ключевое слово class используется для определения объявления и выражения класса. Основное различие между объявлениями функций поднимается, тогда как объявления классов не поднимаются. так что у вас есть использование после определения класса.
конструктор используется для создания и инициализации объектов. на определение класса должен быть только один конструктор.
Не стесняйтесь комментировать свои предложения.
Спасибо!!!
Ссылка:-