It's not just that the key isn't populated; it's that it's undefined. FWIW, my browser (Chrome) works on the site even if I choose not to share geolocation; I assume because the API is populated even if it then refrains from sharing.
Your point isn't quite wrong but it also isn't quite right; geolocation is supported by every browser listed on Mozilla's documentation (https://developer.mozilla.org/en-US/docs/Web/API/Navigator/g...) so if a browser isn't at least stubbing out that API these days, it's not w3c-compliant, and non-w3c-compliant browsers will sometimes just break on some pages.
It is, of course, still incumbent on the developer to go that extra mile if they want to catch that last 1% of users, but users of exotic browsers get an exotic experience also.