Я не уверен, что получаю логи c за js реализацией необязательного сцепления.
const a = {b:1}
1 > console.log(a?.c) => undefined
2 > console.log(a?.c?.d) => undefined
3 > console.log(a?.c.d) => Uncaught TypeError: Cannot read property 'd' of undefined
все имеет смысл так долго. Затем:
4 > console.log(a?.c?.d.e) => undefined
5 > console.log(a?.c?.d.e.f.g) => undefined
Доступ к свойству undefined вызывает ошибку (# 3), но доступ к произвольному количеству несуществующих вложенных свойств после 2 необязательных цепочек больше не вызывает ошибок.