What is the Difference Between Null and Undefined in JavaScript?

Sumit kumar Singh
3 min readApr 4, 2023

--

In JavaScript, null and undefined are two special values that represent the absence of a value. However, they have different meanings and use cases.

Undefined: Undefined is a built-in value in JavaScript, which is assigned to a variable that is declared but has not been assigned a value. For instance:

let variable;
console.log(variable); // undefined

In the above example, the variable is declared, but it has not been assigned a value. When you try to access its value, it returns undefined. In JavaScript, undefined is also returned when you try to access a property or a method of an object that does not exist.

let obj = {};
console.log(obj.property); // undefined
console.log(obj.method()); // TypeError: obj.method is not a function

Null: Null is another built-in value in JavaScript, which represents the intentional absence of any object value. It is often used to assign an empty or non-existent value to an object or a variable.

let variable = null;
console.log(variable); // null

In the above example, the variable is assigned a value of null, which indicates that it intentionally does not have any value. Unlike undefined, null is explicitly assigned to a variable, property, or method.

Differences:

  1. Undefined is automatically assigned to a variable that is declared but has not been assigned a value, while null is assigned manually to indicate the intentional absence of a value.
  2. Undefined is returned when you try to access a property or a method of an object that does not exist, while null is explicitly assigned to indicate the intentional absence of a value.
  3. In some cases, undefined can cause errors or unexpected behavior in your code, while null is used to explicitly represent the absence of a value.
let variable;
console.log(variable.prop); // TypeError: Cannot read property 'prop' of undefined
let variable = null;
console.log(variable.prop); // TypeError: Cannot read property 'prop' of null

In the first example, accessing a property of undefined throws a TypeError, which may cause unexpected behavior in your code. In the second example, accessing a property of null also throws a TypeError, but it indicates that the intentional absence of a value was assigned.

In conclusion, null and undefined are two special values in JavaScript that represent the absence of a value. They have different meanings and use cases, and understanding their differences is important to avoid unexpected behavior in your code.

Thanks for reading!

I hope you found this article useful. If you have any questions or suggestions, please leave comments. Your feedback helps me to become better.

Don’t forget to subscribe⭐️

Facebook Page: https://www.facebook.com/designTechWorld1

Instagram Page: https://www.instagram.com/techd.esign/

Youtube Channel: https://www.youtube.com/@tech..Design/

Twitter: https://twitter.com/sumit_singh2311

Gear used:

Laptop: https://amzn.to/3yKkzaC

You can prefer React Book: https://amzn.to/3Tw29nx

Some extra books related to programing language:

https://amzn.to/3z3tW5s

https://amzn.to/40n4m6O

https://amzn.to/3Jzstse

https://amzn.to/3nbl8aE

*Important Disclaimer — “Amazon and the Amazon logo are trademarks of Amazon.com, Inc. or its affiliates.”

--

--

Sumit kumar Singh

YouTube: https://www.youtube.com/@tech..Design/ 📚 HTML,Angular, React,and JavaScript 🧑‍💻 Tips & tricks on Web Developing 👉 FULL STACK DEVELOPER