There are a few nuances with checking whether a variable or object property is undefined in JavaScript. Here’s what you need to know.
In JavaScript, checking if a variable is undefined can be a bit tricky since a null variable can pass a check for undefined
if not written properly. As a result, this allows for undefined
values to slip through and vice versa. Make sure you use strict equality ===
to check if a value is equal to undefined
.
let x;
const y = null;
x == null && y == undefined; // true
x === null || y === undefined; // false
x == null && typeof x == 'object'; // false
x === undefined && typeof x == 'undefined'; // true
Another alternative is checking if typeof x === 'undefined'
. The biggest difference between these two approaches is that, if x
has not been declared, x === undefined
throws a ReferenceError
, but typeof
does not.
#javascript #programming #developer