#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

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

  • @ВпоискахСвоегоМеста
    @ВпоискахСвоегоМеста ปีที่แล้ว +2

    Всё закончилось трагически... Объект был полностью удалён( Спасибо за видео, очень полезные)

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

    Уж очень тонкий лёд получается с этим новым оператором. Особенно для новичка. Хорошо, если логическая последовательность кода написана опытным специалистом, на чистых функциях и без большого кол-ва замыканий, связанных с методами из объектов. Но обычно, такой код - большая редкость. А теперь с новым оператором, новичок будет долго искать причину, по которой его код не работает как требуется)))), ведь сообщений об ошибке в логах не будет))))

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

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

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

    Добрый день.
    Уточните пожалуйста, как работает проверка на 3:19
    console.log(`${car.brand} ${car.details && car.details.year}: цвет - ${car.details && car.details.color}`
    интересует именно: ${car.details && car.details.year} Если свойство есть, то в консоль выведется свойство details , а также details.year вместе, разве нет?

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

      Нет, в js оператор && выполняет следующие действия: вычисляет операнды слева направо, каждый операнд преобразует в логическое значение. Если результат false, останавливается и возвращает исходное значение этого операнда. Если все операнды были истинными, возвращается последний.
      Поэтому выражение пишется так, чтобы всегда вовращалось значение последнего операнда, т.е. первый операнд должен быть истинным. Вместо car.details можно написать car , 1 или true и && вернет исходное значение car.details.year, которым будет undefined или соотвествующее его значение.
      Посмотрите learn.javascript ru/logical-operators

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

    Спасибо, очень доходчиво и понятно!

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

    Спасибо, что показал пример в практическом применении, а то в теории я ни фига не понял для чего нужен этот "?." ))

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

      Спасибо!

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

    Ооо спасибо за урок, гляну чуть позже)

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

    Супер, спс.

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

    спасибо

  • @Максим-ы7ц5в
    @Максим-ы7ц5в 2 ปีที่แล้ว +1

    Дякую за уроки!

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

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

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

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

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

    Василий, Добрый день! исправьте название) у вас там '.?' спасибо за видео)

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

      Так это же оператор так выглядит:)

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

    крутой контент!

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

      Спасибо!

  • @СергейАлександров-ы2е
    @СергейАлександров-ы2е 2 ปีที่แล้ว +1

    спасибо , мне понравилось)

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

      Спасибо!

  • @AleksandrMaltsev-jm8ph
    @AleksandrMaltsev-jm8ph 2 ปีที่แล้ว

    Добрый день, занимаетесь ли вы менторством ?

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

      Добрый день. Нет -не занимаюсь, но в след году - планирую базовый курс по разработке - где будут встречи + проверка работ.

    • @AleksandrMaltsev-jm8ph
      @AleksandrMaltsev-jm8ph 2 ปีที่แล้ว

      @@stackdev Хорошо спасибо

  • @Sergio-ij7pw
    @Sergio-ij7pw 2 ปีที่แล้ว

    копируете примеры других блогеров (th-cam.com/video/RA8RHgzPokk/w-d-xo.html) ? ну такое себе