If a language change were to update `typeof null` to return `"null"` isObject would not break, the second condition would only be unnecessary.
However, other code which may make assertions on null values after checking the value is an object would break.