I'll try to explain my thoughts with the help of examples.
The variable var will be null if there is no obj key:
The variable var will be null if there is no obj key or obj exists but no obj.key exists:
The variable var will be null if there is no obj key or throws if there is no obj.key exists: