Vasilii Muravev
Vasilii Muravev
  • Видео 104
  • Просмотров 1 468 868
Дженерики в TypeScript с нуля (Generic, Extends, Параметры по Умолчанию + Примеры Использования)
В этом видео мы разберемся как работают дженерики в Typescript и как правильно их использовать. Generic позволяет нам создавать функции, которые могут использовать одинаковую логику для разных типов данных.
Мои Курсы:
JavaScript для начинающих: stackdev.ru/courses/javascript
React для начинающих: react001.ru
​Все мои курсы (+ исходные файлы): stackdev.ru
Подписывайся на соц сети:
Telegram: t.me/stackdevru
VK: vasilymur
Instagram: vm_online
Мой блог о веб-разработке: stackdev.blog
Просмотров: 3 404

Видео

#15. Функции Debounce и Throttle в JavaScript (пишем с нуля и разбираемся как работают)
Просмотров 2,3 тыс.7 месяцев назад
В этом видео мы разберемся для чего нужны и как работают функции Debounce и Throttle в JavaScript. Мы напишем с нуля обе функции и отобразим результат работы Debounce и Throttle на нашей странице. Файлы для работы: t.me/stackdevru/78 Мои Курсы: ​Все мои курсы ( исходные файлы): stackdev.ru JavaScript для начинающих: stackdev.ru/courses/javascript Подписывайся на соц сети: Telegram: t.me/stackde...
Табы на JavaScript (работаем с DOM деревом, событиями и циклами JS, меняем свойства HTML и CSS)
Просмотров 2,7 тыс.8 месяцев назад
В этом видео мы научимся создавать табы (вкладки) на чистом JavaScript. Для решения этой задачи мы будем работать с DOM деревом, чтобы динамически менять значения атрибутов HTML элементов. Мы также будем использовать переменные, стрелочные функции, циклы и события JS. Файлы проекта: t.me/stackdevru/75 Мои Курсы: JavaScript для начинающих: js001.ru React для начинающих: react001.ru ​Все мои курс...
JavaScript ES2023: 4 новых метода массивов (with, toSorted, toReversed, toSpliced)
Просмотров 2,3 тыс.9 месяцев назад
В этом видео мы изучим 4 новых метода массивов JavaScript - with, toSorted, toReversed, toSpliced. Главное преимущество этих методов заключается в том, что они не мутируют исходный массив. Файлы для начала работы: t.me/stackdevru/74 Мои Курсы: JavaScript для начинающих: js001.ru React для начинающих: react001.ru ​Все мои курсы ( исходные файлы): stackdev.ru Подписывайся на соц сети: Telegram: t...
Почему не нужно просить повышения зарплаты, а вместо этого сменить работу!
Просмотров 2,5 тыс.11 месяцев назад
Именно при смене работы вы получаете больше шансов повысить вашу зарплату, так как поиск ведется в рамках текущих рыночных условий, который учитывает инфляцию и многие другие моменты. 00:00 Введение 00:20 Разумный размер повышения зарплаты после года работы 01:42 HR бюджеты 02:27 Бюджет на поддержание текущей деятельности 03:43 Переход в новую компанию Мои Курсы: JavaScript для начинающих: js00...
JavaScript - 6 задач на собеседовании + решение
Просмотров 16 тыс.Год назад
В этом видео мы рассмотрим 6 задач, которые встречаются на собеседованиях JavaScript и решим их. Рабочие файлы: t.me/stackdevru/72 Мои Курсы: JavaScript для начинающих: js001.ru React для начинающих: react001.ru ​Все мои курсы ( исходные файлы): stackdev.ru Подписывайся на соц сети: Telegram: t.me/stackdevru VK: vasilymur Instagram: vm_online Мой блог о веб-разработке: stac...
JavaScript - таймер обратного отсчета (используем объект Date, setInterval, обработчики событий)
Просмотров 2,9 тыс.Год назад
JavaScript - таймер обратного отсчета (используем объект Date, setInterval, обработчики событий)
#14. JavaScript. Массивы JS: 3 способа создания
Просмотров 4,9 тыс.Год назад
#14. JavaScript. Массивы JS: 3 способа создания
React и TypeScript - Практический Курс [2023]
Просмотров 29 тыс.Год назад
React и TypeScript - Практический Курс [2023]
JavaScript - отмечаем список чекбоксов, удерживая клавишу Shift.
Просмотров 1,5 тыс.Год назад
JavaScript - отмечаем список чекбоксов, удерживая клавишу Shift.
JavaScript - создаем динамический поиск (используем события js, fetch, map, filter, forEach, regex)
Просмотров 17 тыс.Год назад
JavaScript - создаем динамический поиск (используем события js, fetch, map, filter, forEach, regex)
CSS Flexbox #13. Используем свойства flex (flex grow, flex shrink и flex basis) вместе с flex-wrap
Просмотров 2,5 тыс.Год назад
CSS Flexbox #13. Используем свойства flex (flex grow, flex shrink и flex basis) вместе с flex-wrap
CSS Flexbox #12. Используем комбинацию свойств flex grow, flex shrink и flex basis
Просмотров 2,7 тыс.Год назад
CSS Flexbox #12. Используем комбинацию свойств flex grow, flex shrink и flex basis
CSS Flexbox #11. Используем свойство flex с одним значением (flex: 1)
Просмотров 1,7 тыс.Год назад
CSS Flexbox #11. Используем свойство flex с одним значением (flex: 1)
CSS Flexbox #10. Выравнивание флекс элементов в контейнере, используя свойство align-self
Просмотров 1,3 тыс.Год назад
CSS Flexbox #10. Выравнивание флекс элементов в контейнере, используя свойство align-self
CSS Flexbox #9. Выравнивание и центрирование flex-элементов с помощью свойства align-content
Просмотров 1,8 тыс.Год назад
CSS Flexbox #9. Выравнивание и центрирование flex-элементов с помощью свойства align-content
CSS Flexbox #8. Используем свойство align-items для выравнивания и центрирования flex элементов
Просмотров 1,6 тыс.Год назад
CSS Flexbox #8. Используем свойство align-items для выравнивания и центрирования flex элементов
CSS Flexbox #7. Используем свойство justify-content для выравнивания и центрирования flex-элементов
Просмотров 1,9 тыс.Год назад
CSS Flexbox #7. Используем свойство justify-content для выравнивания и центрирования flex-элементов
CSS Flexbox #6. Меняем порядок элементов внутри flex контейнера, используя свойство order
Просмотров 2,3 тыс.Год назад
CSS Flexbox #6. Меняем порядок элементов внутри flex контейнера, используя свойство order
CSS Flexbox #5. Используем свойство flex-wrap, которое позволяет элементам занять несколько строк.
Просмотров 2,4 тыс.Год назад
CSS Flexbox #5. Используем свойство flex-wrap, которое позволяет элементам занять несколько строк.
CSS Flexbox #4. Используем свойство flex-direction, чтобы менять направление главной оси
Просмотров 2,6 тыс.Год назад
CSS Flexbox #4. Используем свойство flex-direction, чтобы менять направление главной оси
CSS Flexbox #3. Начинаем работу с Flexbox (cоздаем flex контейнер + flex элементы)
Просмотров 3,8 тыс.Год назад
CSS Flexbox #3. Начинаем работу с Flexbox (cоздаем flex контейнер flex элементы)
CSS Flexbox #2. Структура проекта Flexbox
Просмотров 3,2 тыс.Год назад
CSS Flexbox #2. Структура проекта Flexbox
CSS Flexbox #1. Что мы будем делать
Просмотров 4,8 тыс.Год назад
CSS Flexbox #1. Что мы будем делать
Нужен ли диплом программисту в 2022 году? (Результаты американского исследования)
Просмотров 2,2 тыс.Год назад
Нужен ли диплом программисту в 2022 году? (Результаты американского исследования)
NextJS Вводный Курс #15 - Передаем данные для создания каждой динамической страницы в компонент.
Просмотров 4,9 тыс.2 года назад
NextJS Вводный Курс #15 - Передаем данные для создания каждой динамической страницы в компонент.
NextJS Вводный Курс #14 - Динамические маршруты для статических страниц (часть 2)
Просмотров 4 тыс.2 года назад
NextJS Вводный Курс #14 - Динамические маршруты для статических страниц (часть 2)
NextJS Вводный Курс #13 - Динамические маршруты для статических страниц (часть 1)
Просмотров 4,8 тыс.2 года назад
NextJS Вводный Курс #13 - Динамические маршруты для статических страниц (часть 1)
NextJS Вводный Курс #12 - Отображаем список бургеров на странице
Просмотров 3,8 тыс.2 года назад
NextJS Вводный Курс #12 - Отображаем список бургеров на странице
NextJS Вводный Курс #11 - Получаем данные с помощью функции getStaticProps
Просмотров 7 тыс.2 года назад
NextJS Вводный Курс #11 - Получаем данные с помощью функции getStaticProps

Комментарии

  • @qlmanlp
    @qlmanlp 3 дня назад

    Плейлист просто 🔥 Очень просто и доступно

  • @artemkirkhmaier484
    @artemkirkhmaier484 8 дней назад

    кучу видео пересмотрел, еще не встречал того, кто знал бы настолько хорошо эту тему,чтобы мог объяснить. Все объясняют это по-разному и разное понимание.

  • @igromanyayt4323
    @igromanyayt4323 13 дней назад

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

  • @stepankormilin7147
    @stepankormilin7147 20 дней назад

    j < nums.length - 1

  • @user-nk9nj6cz5l
    @user-nk9nj6cz5l 22 дня назад

    вторую задачу можно было написать в 2 строки

  • @xman5911
    @xman5911 23 дня назад

    еще в стрелочный не возможно использовать argument и создать через new

  • @user-nd4sl1lp9b
    @user-nd4sl1lp9b 23 дня назад

    А можно ли добится подобного функционала если писать в старом стандарте es5?

  • @andrew2340
    @andrew2340 25 дней назад

    курс устарел а новый никто не сделал

  • @user-of6mn5ci2p
    @user-of6mn5ci2p 25 дней назад

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

  • @tatianajafarova3248
    @tatianajafarova3248 27 дней назад

    У вас код и объяснение один в один с Web Dev Simplified, только на русском. Но то видео вышло раньше)

  • @blackwood8816
    @blackwood8816 29 дней назад

    Спасибо большущее, просто бомба объяснил. Теперь понял, что и как. В душе светит солнце, дом полон радости)))

  • @user-ys4pj8iz9c
    @user-ys4pj8iz9c Месяц назад

    Спасибо большое!!!!

  • @user-if1dj7fy2y
    @user-if1dj7fy2y Месяц назад

    Чудесно звучит 🎉❤ А когда будет продолжение этой темы разговора 😮

  • @user-lo4lg1jo6z
    @user-lo4lg1jo6z Месяц назад

    Здорово! Немного добавлю от себя. Если сразу с зажатым шифтом кликнуть на любой чекбокс, то все чекбоксы начиная от него и до конца будут отмечены. Чтоб этого не было, добавил в первый if еще одно условие: && lastChecked. Тогда все отлично работает, сразу с зажатым шифтом можно отмечать два чекбокса и будет выделены все между ними

  • @sony1939
    @sony1939 Месяц назад

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

  • @SM-xp8tw
    @SM-xp8tw Месяц назад

    все круто обьяснил, ну пропустил одну очень важную деталь про контекст, а именно контекст в стрелочных функциях, на собесах про это часто спрашивают

  • @bobmagrega
    @bobmagrega Месяц назад

    Объясните, пожалуйста, что это за запись на 51:07 на 25 строке? Почему name взято в квадратные скобки?

  • @Kirill-hc3fo
    @Kirill-hc3fo Месяц назад

    Ёмко, сжато, самая суть. Спасибо за видео! Так держать )

  • @lesson-web
    @lesson-web Месяц назад

    очень понравился материал

  • @user-gb7ez3cb4k
    @user-gb7ez3cb4k Месяц назад

    Абсолютно прав!!!

  • @apmypa.b.291
    @apmypa.b.291 Месяц назад

    Походу все всё поняли кроме меня) Почему родительская функция неактивна? Она же запускается каждый раз, просто через функцию обёртку. А к функции внутри мы не обращаемся ни разу кроме как запуская родительскую. Я не понял тейка.

  • @robertmaener6414
    @robertmaener6414 Месяц назад

    Кстати, можно через filter проще сделать ||| const auto = cars.filter((car) => car.id !== 1111), но тут не знаю, как спред влепить =)

  • @lowmikow1099
    @lowmikow1099 Месяц назад

    Огромное спасибо за видео! Для новичков в TS очень мало столь понятного контента)

  • @elenaizmaylova9331
    @elenaizmaylova9331 Месяц назад

    Василий, спасибо огромное Вам за объяснения! Всё очень понятно и доступно! Одно из лучших объяснений, которые я смотрела)

  • @avelo895
    @avelo895 Месяц назад

    Благодарю Вас. У Вас очень приятный голос. Вас нравится слушать.

  • @lowmikow1099
    @lowmikow1099 Месяц назад

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

  • @ruslanadam8151
    @ruslanadam8151 Месяц назад

    гут

  • @glzvski9645
    @glzvski9645 Месяц назад

    Вышка плюс, но не показатель. На своем опыте скажу что из всей группы 2-3 человека на выходе будут хоть что-то стоить. Остальные приходят просто на пары, получают диплом и ищут работу чтобы в монитор смотреть.

  • @happyman1696
    @happyman1696 Месяц назад

    это очень слабый урок получился, даже ошибку не поправили вначале)) просто удалили, а ошибка оч популярная

  • @user-vd2bi2gx5m
    @user-vd2bi2gx5m Месяц назад

    Не делайте никогда как делает автор Пишите обычный css, даже препроцессоры не нужны

  • @user-nl9nh4yj9u
    @user-nl9nh4yj9u Месяц назад

    4 задача, решение автора - квадратичная сложность (On^2) - тк двойной проход Почти все подобные задачи можно решить в один проход за On ,смотря в сторону использования мапы (обьект вспомогательный) const numbers = [3, 5, -4, 8, 11, 1, -1, 6]; const sum = 10; const map = {}; const fn = (numbers, sum) => { let result; for (let index = 0; index < numbers.length; index++) { const number = numbers[index]; if (map[sum - number]) { result = [sum - number, number]; index = numbers.length - 1; } if (!map[number]) { map[number] = sum - number; } result = []; } return result; }; console.log(fn(numbers, sum));

  • @user-us5zb1gs3p
    @user-us5zb1gs3p Месяц назад

    А остальные шорткаты ? А наличие других аргументов ?

  • @GazGaz-xq4fd
    @GazGaz-xq4fd Месяц назад

    в 4 задаче автор привёл решение, которое работает за O(n^2), что очень плохо, такое решение на собесе не прокатит, следует приводить более быстрое решение

  • @black_light
    @black_light Месяц назад

    Как быть с toSpliced? TypeScript на него ругается, предлагает на splice заменить)

    • @linesgreen9211
      @linesgreen9211 Месяц назад

      Тебе нужно в конфиге ts указать, что бы использовалась новая версия Js (ESNext) { "compilerOptions": { "target": "ESNext", ..... }

  • @sanek7b282
    @sanek7b282 2 месяца назад

  • @olegkudelkin1509
    @olegkudelkin1509 2 месяца назад

    Гений! Отличный подход. Сначала показать проблематику, а затем декомпозировать и поэтапно все это объяснять. Спасибо!)

  • @elenakhilalova
    @elenakhilalova 2 месяца назад

    Ребят как решить проблему, когда вешаю обработчик клика на иконки, onClick подсвечивается красным, пожалуйста подскажите как исправить <AiFillEdit onClick={hangleToogleEdit}/> <AiFillDelete onClick={handelDelete}/>

  • @user-tv3of9nw8m
    @user-tv3of9nw8m 2 месяца назад

    true story

  • @user-tv3of9nw8m
    @user-tv3of9nw8m 2 месяца назад

    очень толково 🤘🏻 спасибо!)

  • @PostSiege
    @PostSiege 2 месяца назад

    Это нечто невероятно. Не знал о таком. Спасибо 🙏

  • @user-nj3bu2su6b
    @user-nj3bu2su6b 2 месяца назад

    Очень доступно и понятно, спасибо

  • @user-pg4rx7qe9l
    @user-pg4rx7qe9l 2 месяца назад

    Нах это надо , есть же модули

  • @user-zw6bd5wo6t
    @user-zw6bd5wo6t 2 месяца назад

    третья задача попалась на реальном собеседовании

  • @Rabinovitch777
    @Rabinovitch777 2 месяца назад

    Если мне нужно слушать только события клика на кнопках или картинках, то зачем мне нужно window.onload и вся эта котовасия со всплытиями/погружениями?

  • @user-lc6jl9hi2u
    @user-lc6jl9hi2u 2 месяца назад

    Спасибо, про закидывание методов именно в прототип, интересно было узнать!

  • @skyTechVektor
    @skyTechVektor 2 месяца назад

    Был бы такой канал по php или c#

  • @EvilGazz
    @EvilGazz 2 месяца назад

    Очень доступно объясняете, спасибо за качественный контент!

    • @stackdev
      @stackdev 2 месяца назад

      Спасибо!

  • @benchik100
    @benchik100 2 месяца назад

    i've done

  • @user-jd8pz3lz6s
    @user-jd8pz3lz6s 2 месяца назад

    Я извиняюсь, а нахера эта херомантия нужна? 😅😅 Выглядит мега ужасно, когда ширина селекта меняется в зависимости от опции

  • @user-ue8bh7tj5k
    @user-ue8bh7tj5k 2 месяца назад

    Скажу честно. Выглядит ужасно. Неужели до сих пор в реакте никто не придумал scoped стили как во Vue? Я сейчас не про style modules