#12. Optional Chaining в JavaScript - оператор опциональной цепочки "?." (JS для начинающих).
ฝัง
- เผยแพร่เมื่อ 28 ก.ย. 2024
- Telegram StackDev: t.me/stackdevru
Опциональная цепочка "?." (оператор опциональной последовательности) - одна из новых полезных возможностей Javascript. С помощью нее мы можем безопасно получать доступ к свойствам вложенных объектов, даже если какое-либо из промежуточных свойств отсутствует.
Мои Курсы:
GatsbyJS (продвинутый): gatsbyjs.ru
React для начинающих: react001.ru
Все мои курсы (+ исходные файлы): stackdev.ru
Подписывайся на соц сети:
Telegram: t.me/stackdevru
VK: vasilymur
Instagram: / vm_online
Мой блог о веб-разработке: stackdev.blog
Всё закончилось трагически... Объект был полностью удалён( Спасибо за видео, очень полезные)
Уж очень тонкий лёд получается с этим новым оператором. Особенно для новичка. Хорошо, если логическая последовательность кода написана опытным специалистом, на чистых функциях и без большого кол-ва замыканий, связанных с методами из объектов. Но обычно, такой код - большая редкость. А теперь с новым оператором, новичок будет долго искать причину, по которой его код не работает как требуется)))), ведь сообщений об ошибке в логах не будет))))
Не совсем понял, что ты имеешь ввиду..... у меня был очень простой кейс, связанный с этим оператором..... Приложение с таблицей падало - когда бэк что-то химичил с принятой моделью...
Добрый день.
Уточните пожалуйста, как работает проверка на 3:19
console.log(`${car.brand} ${car.details && car.details.year}: цвет - ${car.details && car.details.color}`
интересует именно: ${car.details && car.details.year} Если свойство есть, то в консоль выведется свойство details , а также details.year вместе, разве нет?
Нет, в js оператор && выполняет следующие действия: вычисляет операнды слева направо, каждый операнд преобразует в логическое значение. Если результат false, останавливается и возвращает исходное значение этого операнда. Если все операнды были истинными, возвращается последний.
Поэтому выражение пишется так, чтобы всегда вовращалось значение последнего операнда, т.е. первый операнд должен быть истинным. Вместо car.details можно написать car , 1 или true и && вернет исходное значение car.details.year, которым будет undefined или соотвествующее его значение.
Посмотрите learn.javascript ru/logical-operators
Спасибо, очень доходчиво и понятно!
Спасибо, что показал пример в практическом применении, а то в теории я ни фига не понял для чего нужен этот "?." ))
Спасибо!
Ооо спасибо за урок, гляну чуть позже)
Супер, спс.
спасибо
Дякую за уроки!
Спасибо за контент 👍
Спасибо за поддержку!
Василий, Добрый день! исправьте название) у вас там '.?' спасибо за видео)
Так это же оператор так выглядит:)
крутой контент!
Спасибо!
спасибо , мне понравилось)
Спасибо!
Добрый день, занимаетесь ли вы менторством ?
Добрый день. Нет -не занимаюсь, но в след году - планирую базовый курс по разработке - где будут встречи + проверка работ.
@@stackdev Хорошо спасибо
копируете примеры других блогеров (th-cam.com/video/RA8RHgzPokk/w-d-xo.html) ? ну такое себе