What is undefined in JavaScript?
In JavaScript, undefined
is a primitive value that represents the lack of a value. It is one of the two falsy values in JavaScript, along with null
.
When is undefined used?
There are a few different scenarios in which undefined
can be used:
- When a variable has not been assigned a value yet.
- When a function is called without any arguments.
- When an object property does not exist.
How to check for undefined
There are a few different ways to check if a value is undefined
:
- The
typeof
operator - The
==
operator - The
===
operator
The typeof operator
The typeof
operator returns the type of a value. If the value is undefined
, the typeof
operator will return “undefined”.
console.log(typeof undefined); // "undefined"
The == operator
The ==
operator compares two values for equality. If the two values are of the same type and have the same value, the ==
operator will return true. Otherwise, the ==
operator will return false.
When comparing undefined
to another value, the ==
operator will return true if the other value is also undefined
. Otherwise, the ==
operator will return false.
console.log(undefined == undefined); // true console.log(undefined == null); // true console.log(undefined == 0); // false
The === operator
The ===
operator compares two values for strict equality. If the two values are of the same type and have the same value, the ===
operator will return true. Otherwise, the ===
operator will return false.
When comparing undefined
to another value, the ===
operator will only return true if the other value is also undefined
. Otherwise, the ===
operator will return false.
console.log(undefined === undefined); // true console.log(undefined === null); // false console.log(undefined === 0); // false
Conclusion
undefined
is a primitive value in JavaScript that represents the lack of a value. It is one of the two falsy values in JavaScript, along with null
. There are a few different ways to check if a value is undefined
, including the typeof
operator, the ==
operator, and the ===
operator.