Open In App
Related Articles

variable === undefined vs. typeof variable === “undefined” in JavaScript

Improve
Improve
Improve
Like Article
Like
Save Article
Save
Report issue
Report

Undefined comes into the picture when any variable is defined already but not has been assigned any value. Undefined is not a keyword. A function can also be undefined when it doesn’t have the value returned. 
There are two ways to determine if a variable is not defined, Value and type. 

var geeks;
alert ( geeks === undefined)

It’s so clear that you assigned a variable that was not defined but the variable exists. Here you are comparing the geeks variable with the global variable “undefined” which is undefined also. 

Syntax: 

  • Check by Value (Strict equality Operator): Here you will get whether the variable is assigned a value or not if the variable is not assigned a value it will display undefined.
  • Check the type (Typeof operator): Here you will get what type of variable was that if there is no variable assigned then it will display “undefined”.


Note: The strict equality operator (===) doesn’t check whether the variable is null or not. The type of operator does not throw an error if the variable has not been declared.

Example: Here we assign two variables one is undefined and the other one is defined as “null”, here null is not undefined when you put console.log it will show “null” if you check typeof then it will display the object, below program will illustrate the approach more clearly. 

javascript

var firstName;
var lastName = null;
  
// Print: undefined        
console.log(firstName); 
// Print: null
console.log(lastName);  
          
// Print: undefined
console.log(typeof firstName);
// Print: object 
console.log(typeof lastName);  
          
// Print: false
console.log(null === undefined) 
          
if(firstName === undefined) {
    console.log('LastName is undefined');
} else if(firstName === null){
    console.log('FirstName is null');
}

                    

Output: 

undefined
null

undefined
object

false

variable === undefined VS typeof variable === “undefined” 

variable === undefined

typeof variable === “undefined”

Here the assigned variables don’t have any value but the variable exists.Here the type of variable is undefined.
If you assigned a value(var geeks === undefined ) it will show, if not it will also show undefined but in different meaning.Here the undefined is the typeof undefined.
In this, null will display if you assigned null to a variable, null is loosely equals to undefinedBut here typeof will show object.

Last Updated : 19 Jan, 2023
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads