Optional Chaining github.com // before const fooInput = myForm.querySelector('input[name=foo]'); const fooValue = fooInput ? fooInput.value : undefined; // after const fooValue = myForm.querySelector('input[name=foo]')?.value; const obj = { foo: { bar: { baz: 42 } } }; obj?.foo?.bar?.baz; // 42 obj?.qux?.baz; // undefined obj?.foo.bar.qux?.(); // undefined function test() { return 42; } test?.();