ES6 #13. Все о Классах в Javascript (+ Примеры + Сравнение c Прототипами)

แชร์
ฝัง
  • เผยแพร่เมื่อ 25 ม.ค. 2021
  • Мой Telegram: t.me/stackdevru
    В этом видео мы разберемся, как работают Классы (ES6 Classes), которые появились в редакции Javascript ES6. Посмотрим, зачем они нужны и чем отличаются от использования Прототипов.
    В объектно-ориентированном программировании класс - это расширяемый шаблон кода для создания объектов, который устанавливает в них начальные значения (свойства) и реализацию поведения (методы).
    Плейлист курса ES6: • ES6 - Все Новые Фичи в...
    Мои Курсы:
    Gatsby JS (полный курс): gatsbyjs.ru
    React для начинающих: react001.ru
    ​Все мои курсы (+ исходные файлы): stackdev.ru
    Подписывайся на соц сети:
    Telegram: t.me/stackdevru
    VK: vasilymur
    Instagram: / vm_online
    Мой блог о веб-разработке: stackdev.blog

ความคิดเห็น • 68

  • @konglomora227
    @konglomora227 2 ปีที่แล้ว +34

    Так просто мне еще никто ничего в js не объяснял))) Спасибо!

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо!

    • @alexmarkitan2875
      @alexmarkitan2875 ปีที่แล้ว +2

      @@stackdev да, ты очень крутой мужик!

  • @sony1939
    @sony1939 16 วันที่ผ่านมา +1

    Ваот это супер пример! Благодарность (heart heart love)

  • @TheTemnbli
    @TheTemnbli 2 ปีที่แล้ว +10

    Хорошо воспринимается информацию. Понятный пример с разбором от куда что берёт и зачем. Хорошая речь, приятно слушать.

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо за коммент!

  • @Albert_Hall
    @Albert_Hall ปีที่แล้ว +9

    Очень нравится мне подача. ПЕриодически возвращаюсь именно на этот канал для освежения в голове искомого материала. Процветания каналу! Благодарю!
    ☘🌏

    • @stackdev
      @stackdev  ปีที่แล้ว

      Очень приятно! спасибо)

  • @lowmikow1099
    @lowmikow1099 27 วันที่ผ่านมา

    Огромное спасибо за такое понятное объяснение!)

  • @NailIsmailov
    @NailIsmailov 2 ปีที่แล้ว +8

    Спасибо за видео. Отличное обьяснение сложных вещей легкими словами и интересными примерами!

    • @stackdev
      @stackdev  2 ปีที่แล้ว +1

      Спасибо!

  • @dimka3628
    @dimka3628 2 ปีที่แล้ว +6

    Лучшее объяснение, что я видел!Спасибо, автор, большое !

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо!

    • @Max-kr4ie
      @Max-kr4ie 2 ปีที่แล้ว +1

      @@stackdev а есть практика по классам ? а то мало где найти можно.

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      @@Max-kr4ie Конечно: th-cam.com/video/50cdak-NxQg/w-d-xo.html

  • @Sasha_channel_
    @Sasha_channel_ ปีที่แล้ว +1

    Очень помогли в разборе этой темы, спасибо 👍

  • @barchaan
    @barchaan ปีที่แล้ว +1

    вторая часть видоса топ

  • @bezbezov8867
    @bezbezov8867 2 ปีที่แล้ว +5

    Спасибо большое! Очень доходчиво и голос как у профессионального диктора!

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо!

  • @prorevalution9522
    @prorevalution9522 ปีที่แล้ว +5

    Очень внятно объясняет ,,,👍👍👍

    • @stackdev
      @stackdev  ปีที่แล้ว

      Спасибо!

  • @user-hh2gw3sp2g
    @user-hh2gw3sp2g 2 ปีที่แล้ว +3

    Спасибо за видео. Отличная подача, как и другие уроки!!!

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо!

  • @user-po6ke5lq5i
    @user-po6ke5lq5i 2 ปีที่แล้ว +4

    Прекрасное объяснение! Спасибо!!!

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо!

  • @dez1ess
    @dez1ess ปีที่แล้ว +1

    Спасибо за ваши видео

  • @user-fl2qf6ye4b
    @user-fl2qf6ye4b ปีที่แล้ว +2

    спасибо! ваше видео очень помогло мне в понимании этой темы!

    • @stackdev
      @stackdev  ปีที่แล้ว

      Спасибо!

  • @alluresport3552
    @alluresport3552 ปีที่แล้ว +2

    Зашел на learnJs почитал немного, что-то понял, что-то понял довольно поверхностно, но четкого понимания некоторых фундаментальных вещей не было, после видео почувствовал что прозрел, спасибо автору

    • @veronikam1882
      @veronikam1882 ปีที่แล้ว

      Тоже с этого сайта. Жаль конечно что про миксины не рассказал

  • @user-jm7dy8ks7w
    @user-jm7dy8ks7w ปีที่แล้ว +1

    Всё предельно понятно. Спасибо за видео

    • @stackdev
      @stackdev  ปีที่แล้ว

      Спасибо!

  • @truedivan
    @truedivan 2 ปีที่แล้ว +2

    Превосходно, спасибо!

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо за поддержку!

  • @cjmine8131
    @cjmine8131 ปีที่แล้ว +1

    Спасибо за очень доступное объяснение

    • @stackdev
      @stackdev  ปีที่แล้ว

      Спасибо!

  • @olga_ua
    @olga_ua 2 ปีที่แล้ว +2

    спасибо и за это видео в том числе )

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Спасибо за поддержку!

  • @nikolaizarezako9344
    @nikolaizarezako9344 2 ปีที่แล้ว +1

    Спасибо. Не плохое объяснение.

    • @stackdev
      @stackdev  2 ปีที่แล้ว +1

      Спасибо!

  • @user-ff8xi8dt7i
    @user-ff8xi8dt7i 2 ปีที่แล้ว +1

    Супер!

  • @veronikam1882
    @veronikam1882 ปีที่แล้ว +2

    Информация подана понятно, особенно для новичков

    • @stackdev
      @stackdev  ปีที่แล้ว

      Спасибо!

  • @userman6193
    @userman6193 ปีที่แล้ว

    У вас есть свои курсы? Если нет, то стоило бы задуматься над их созданием! У вас отлично получается, Василий! Спасибо!

    • @stackdev
      @stackdev  ปีที่แล้ว

      Спасибо! все курсы на stackdev.ru

  • @diamaxel
    @diamaxel 2 ปีที่แล้ว

    Большое спасибо, очень качественно
    Хотел спросить, метод constructer обязателен? Если допустим я хочу создать класс без свойств, могу ли я не писать этот метод?
    И получается метод now у класса Date и есть статический метод? насколько я понимаю метод now нелязя вызвать у экземпляра

    • @galievramil1169
      @galievramil1169 2 ปีที่แล้ว

      2 Верно
      1 Конечно можно, можно класс делатьтолько из методов, даже не объявляя конструктор, или сделать его пустым!

  • @user-mb7kp1bl4w
    @user-mb7kp1bl4w 3 ปีที่แล้ว

    15:03 Момент, когда в методах мы прописываем конструкцию return
    Так ли это важно - возвращать из метода обновлённое свойство?
    Перефразирую: когда мы пишем метод, который как-либо изменяет значение свойства , всегда ли нужно возвращать из метода обновлённое свойство?

    • @stackdev
      @stackdev  3 ปีที่แล้ว +4

      Если говорить вообще о функциях, то обычно подразумевается - что эта функция что-то сделает с нашими данными - и мы получим в return эти обновленные данные (она возвратит обновленные данные). Теоретически можно ничего не возвращать - но тогда нам возвратится значение undefined.

  • @duoduoo6732
    @duoduoo6732 ปีที่แล้ว

    до ES6 как делали наследование или не делали? через замыкания?

  • @nouchance
    @nouchance 3 ปีที่แล้ว +1

    Спасибо большое! Хотел спросить : Для чего нужны фигурные скобки при обявлении переменной? пример : const { Router } = 'express';

    • @user-gn5rr6rt1r
      @user-gn5rr6rt1r 3 ปีที่แล้ว +3

      это похоже на деструктуризацию объекта, только с правой стороны не строка должна быть, а именно объект, у которого будет свойство Router, тогда вместо const router = express.router; упрощенно пишут const { router } = express;

    • @stackdev
      @stackdev  3 ปีที่แล้ว +2

      Это деструктуризация - то есть можно написать const router = express.router, а можно const { router } = express. У меня есть видео с примерами - th-cam.com/video/q1WBrR_yWd0/w-d-xo.html&t

  • @dmitripolevoi4473
    @dmitripolevoi4473 2 ปีที่แล้ว

    Экземпляры объекта или класса?

  • @ok_kov
    @ok_kov 2 ปีที่แล้ว +2

    а мне вот интересно практическое применение классов. Где это можно применить при создании сайта?

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      Вот пример: th-cam.com/video/50cdak-NxQg/w-d-xo.html

  • @user-tc6pi1nc2r
    @user-tc6pi1nc2r ปีที่แล้ว +1

    like

  • @janedoe6182
    @janedoe6182 ปีที่แล้ว

    JS без JSDoc-аннотаций, по моему, слабо пригоден для чего либо сложнее хелло-ворлда. Аннотации немного исправляют дело.

  • @vorisxonsobirov6636
    @vorisxonsobirov6636 11 หลายเดือนก่อน +1

    привет можно вопрос твой дедушка был муравьем?
    🤣

  • @user-hp2xs9qu6g
    @user-hp2xs9qu6g ปีที่แล้ว

    скиньте расцветку кода как такую же сделать в вс коде ))))0

    • @stackdev
      @stackdev  ปีที่แล้ว

      Тема называется Dracula)

  • @user-of6mn5ci2p
    @user-of6mn5ci2p วันที่ผ่านมา

    Хорошо объясняете, но жаль что только для мужчин. Очень непонятно слушать про машины. Тут в js надо разобраться, а приходится слушать про какие-то баки, литры, автопарковка... Уверена что можно найти какой-то более нормальный универсальный пример

  • @user-js9rz9lj4w
    @user-js9rz9lj4w 10 หลายเดือนก่อน +1

    Бесполезный урок. Создавать машинки и заправлять их конечно увлекательно. Но для чего в принципе нужны классы, объекты, наследование и как с этим всем работать - это тема отдельного большого курса или двух. Причём, курса без лайв-кодинга, а с подготовленными примерами.

  • @GPTalksZone
    @GPTalksZone 2 ปีที่แล้ว

    zapravka?? серьёзно? не позорься!

    • @stackdev
      @stackdev  2 ปีที่แล้ว

      А как правильно?

    • @GPTalksZone
      @GPTalksZone 2 ปีที่แล้ว +1

      @@stackdev ну refill хотя-бы. я к тому что ты же людей учишь изначально показывая самый плохой пример задавая названия переменных в транслитерации.

    • @stackdev
      @stackdev  2 ปีที่แล้ว +1

      @@GPTalksZone правильно !:)

  • @pupizoid100
    @pupizoid100 ปีที่แล้ว

    Cпасибо за такие уроки. Можете подсказать, а как реализовать ограничение на заправку бака?. Я попробовал так
    getGas(amount) {
    const totalGas = this.gasTank.length + amount;
    if (totalGas > 100) {
    throw new Error("Gas tank is already full.");
    }
    for (let i = 0; i < amount; i++) {
    this.gasTank.push(i);
    }
    const stamp = Date.now();
    const time = new Date(stamp);
    this.zapravka.push(time.toString());
    return this.gasTank;
    }
    Но что то не то