RasKerGG / SocialNetwork

GNU General Public License v3.0
1 stars 0 forks source link

Посмотреть тему про классы и прототипы из 11 часового курса #27

Closed Fenz1t closed 2 weeks ago

Fenz1t commented 2 weeks ago

Тайминг где начинается разговор про классы и прототипы: 08:37:05

  1. Введение в классы и прототипы:

    • В JavaScript нет классов, как в традиционных объектно-ориентированных языках.
    • Вместо этого используется прототипное наследование, это попытка сделать ООП в js.
  2. Пример класса:

    • Класс определяется с помощью ключевого слова class.
    • Класс может содержать свойства и методы.
    • Конструктор класса определяется с помощью специального метода constructor.
  3. Создание экземпляров класса:

    • Экземпляры класса создаются с помощью оператора new.
    • Экземпляры наследуют свойства и методы, определенные в классе.
  4. Цепочка прототипов:

    • Каждый объект в JavaScript имеет внутренний свойство [[Prototype]], которое ссылается на другой объект.
    • Этот объект называется прототипом объекта.
    • Прототипная цепочка позволяет объектам наследовать свойства и методы от других объектов.
  5. Вызов унаследованных методов:

    • Методы, унаследованные от прототипа, можно вызывать на экземплярах класса.
    • Это происходит благодаря прототипной цепочке.
  6. Проверка принадлежности свойств объектов:

    • Для проверки наличия свойства в объекте можно использовать оператор in или метод hasOwnProperty().
    • Эти методы учитывают как собственные свойства объекта, так и свойства, унаследованные от прототипа.
  7. Статические методы:

    • Статические методы принадлежат самому классу, а не его экземплярам.
    • Они определяются с помощью ключевого слова static.
    • Статические методы вызываются на самом классе, а не на экземплярах.
  8. Расширение других классов:

    • Классы в JavaScript поддерживают наследование.
    • Ключевое слово extends используется для создания дочернего класса, наследующего от базового класса.
    • Дочерний класс наследует свойства и методы родительского класса.
  9. Что же такое прототип:

    • Прототип - это внутреннее свойство [[Prototype]] объекта, которое ссылается на другой объект.
    • Прототипное наследование - основной механизм наследования в JavaScript.
    • Объекты наследуют свойства и методы от своих прототипов.