Как скопировать объект в JavaScript? / Поверхностное и глубокое копирование
ฝัง
- เผยแพร่เมื่อ 23 ก.ค. 2024
- В этом видео обсудим объекты в JavaScript и разберёмся как их копировать. Разберём на практике поверхностное копирование (shallow copy) и глубое копирование (deep clone). Узнаем в чём разница и на что следует обращать внимание. Ну и конечно посмотрим на современный способ копирования объектов.
Содержание:
00:00 Введение
01:15 Про переменные в JS
03:35 Память и объекты
07:34 Сравниваем объекты
08:52 Виды копирования
09:26 Поверхностное копирование (shallow-copy)
10:37 Как сделать поверхностную копию объекта?
15:08 Копирование объекта с помощью Object.assign()
17:26 Глубокое копирование объекта
18:08 Сериализация и десериализация объекта
19:33 JSON.stringify и JSON.parse на практике
22:09 Проверяем результаты копирования с помощью сериализации/десериализации
24:14 А что с вложенным объектом?
24:34 Свойство undefined пропало
25:55 Итоги по stringify / parse
26:49 lodash
28:00 cloneDeep на практике
32:05 Итоги cloneDeep
33:45 structuredClone()
36:11 structuredClone на практике
38:08 Итоги. Когда и что использовать
Полезные ссылки:
* Мой блог в Telegram: t.me/antonovjs
* Оператор spread: developer.mozilla.org/ru/docs...
* Метод Object.assign: developer.mozilla.org/en-US/d...
* Библиотека Lodash: lodash.com
* Метод structuredClone: developer.mozilla.org/en-US/d...
Круто, что спецификация неустанно развивается! Всё как в Ableton Live, с каждым годом всё удобнее!
Спасибо за видео!
Супер! Огромное спасибо! Мало того, что все наконец в голове уложил, так ещё и новое узнал!
Огромное спасибо за объяснение! всё очень структурировано и понятно.
Всё-таки по одному learn JS не поймёшь, даже если несколько раз перечитаешь главу, надо и другие источники смотреть
Игорь спасибо огромное, смотрю ваши видео очень часто, проходил профессию фронтенд разработчика в академии, щас пошел на профессию js, ваши видосы очень помогают)
Спасибо за поддержку!
супер!! отличное видео, которое показывает самую суть способов и методов создания копии!
Отлично! В ts тож работает!
А вот следующее видео отроет серию видосиков по TS 🙂
@@antonov_i Давно пора
Круто, всё по винтикам рассказал и показал. Только для новичка еще непонятно, что массив - это тоже объект. Хорошо бы в кликбейте и в названии это отразить.
Спасибо! Скоро будет отдельное видео по типам данных и вот там про это отдельно расскажу.
@@antonov_i опа тема огонь, уже приближаемся к TS, это хорошо.
Как же понятно всё и какая грамотная речь. Спасибо вам огромное!
Игорь, заранее лайк , видос потом посмотрю.
Спасибо, Игорь! Отличное видео. Хочется так же круто разбираться в программировании)
Очень рад что нашел тебя
Объясняешь все просто и понятно
Спасибо тебе
Отличный материал )
Отличное видео! Успехов в развитии канала)
Спасибо за вашу работу) Очень приятное и доходчивое объяснение!)
Годнота!!!!! Огонь!!! Спасибо!!!!!
выбрал своим первым ЯП JavaScript, в академии взяли фуллстак. я капец запутался, вроде понятно объясняете, а вроде я ничего не понял)) надеюсь опыта наберу и ещё разок посмотрю)
Не переживайте, со временем всё получится. Главное практиковаться 🙌
Игорь, сделай видео про обработчики событий!! Как их правильно навешивать и снимать. Спасибо.
поддерживаю, интересует какие обработчики можно снимать (слышала мнения: нужно снимать обработчики только с документа: снимать нужно все обработчики элементов, которым присвоен класс hidden) , а также как снимать обработчик, если в колбэк нам нужно передать аргументы, то есть вариант с анонимной функцией-оберткой не подойдет
@@user-hf2oj8ep5l согласен с тобой, полностью поддерживаю!!! Надеюсь Игорь поможет и прольёт свет на эту тему!!!! Обработка событий и иже с ними...
Про работу с событиями обязательно сделаю. Сейчас готовлю материалы по TypeScript. Попробую сделать и про работу с событиями. Только вернулся с небольшого отпуска, силы восполнились, можно вступать в новую гонку 🙂
@@antonov_i Побольше ТypeScript!!! Спасибо Игорь!!!!
@@antonov_i А где отдыхали если не секрет? Надеюсь, всё было хорошо ждём новых видео от отдохнувшего и вдохновлённого нашего Наставника!!!
Игорь привет, я твой твой подписчик. Сейчас учусь в Яндексе на фронт разработчика, посоветуй книгу которую первую надо обязательно прочитать) и модно даже несколько) Спасибо
Привет! Про многие хорошие книги по JS рассказал здесь: Что почитать / Большой обзор книг по JavaScript
th-cam.com/video/oard0meN3fA/w-d-xo.html. Рекомендую в обязательном порядке прочитать книги Кайла Симпсона.
как выполнять код в VSC?
Я пользуюсь расширением Code Runner marketplace.visualstudio.com/items?itemName=formulahendry.code-runner
Инфу которую можно объяснить за 2 мин растянул на 40 красава