I introduce that what is different between undefined and null because it is difficult to describe it exactly.
Understanding the Difference between undefined and null
In many programming languages, there is usually one way to represent "no value," such as null.
However, in JavaScript, there are two ways to represent "no value": null and undefined. This can be surprising and confusing for people coming to JavaScript from other languages.
💡Basics
null
null doesn't occur unless programmer Intentionally uses it.
undefined
On the other hand, undefined occurs naturally, even if you don't use it explicitly.
For example, if you declare a variable and it has no initial value, JavaScript will assign undefined to it.
let test;
console.log(test);
// → undefined
When accessing the property that doesn't exist in a object or the element that is not in array, it will automatically became undefined.
const object = {};
console.log(object.foo);
// → undefined
const array = [];
console.log(array[0]);
// → undefined
🔍JSON
undefined
When you use undefined for the value of an object's property and then convert that object to JSON using JSON.stringify, the property is removed from the JSON output.
console.log(JSON.stringify({ name: undefined }));
// → {}
null
On the other hand, when the value of property is null, it will retained .
console.log(JSON.stringify({ name: null }));
// → {"name": null}
👀Conclusion
It is easier to unify with undefined because undefined occurs naturally everywhere.
Happy Coding☀️
Top comments (0)