Hacker News new | ask | show | jobs
by bryanrasmussen 1223 days ago
that's wrong, but it's been around so long I guess we have to accept it.
1 comments

After asking the question, I looked for an answer and found the is-object npm package. It utilizes a null check to make sure a variable is an object. This utility has 6.6 million weekly downloads. The logic in the isObject function will break because the second condition would then be invalidated. Resulting in a bad day for 6.6 million projects. It took me a while to digest the magnitude. Maybe because I just started as an SWE.
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.