var street = user.address?.street var fooValue = myForm.querySelector('input[name=foo]')?.value obj?.prop; obj?.[expr]; func?.(...args); a?.(); a?.[++x]; a?.b.c(++x).d; a?.b[3].c?.(x).d; a?.b.c; (a?.b).c; a?.b?.c; delete a?.b; a?.b[3].c?.(x).d.e?.f[3].g?.(y).h; (a?.b).c(); (a?.b[c]).c(); (a?.b)?.c.d?.e; (a ? b : c)?.d; (list || list2)?.length; (list || list2)?.[(list || list2)]; async function HelloWorld() { var x = (await foo.bar.blah)?.hi; }