Undefined vs Not defined in JavaScript

Reddy DivyaReddy Divya
2 min read

Greetings, fellow coders๐Ÿ‘‹

Let's get to know the difference between undefined and not defined in JavaScript.

undefined

In the Memory Creation Phase, the JS engine allocates a placeholder to the variable called undefined. It also represents the return value of a function that does not explicitly return anything.

Let's understand through an example

Example 1:

console.log(a);//undefined
var a=10;
console.log(a);//10

Output 1:

undefined
10

Explanation:

We Know in the Memory Creation Phase where it allocates memory to the variables with undefined. The ais stored with undefined.

So, whenconsole.log(a)is executed,ahas been declared but not yet assigned a value, resulting inundefined.

In the Code Execution Phase where it re-assigns the values of the variablea=10.

Later, when ais assigned the value10,console.log(a)outputs10.

Example 2:

function foo() {
  // No return statement, so foo() returns undefined
}

console.log(foo()); // Output: undefined

Output 2:

undefined

Explanation:

In the above code snippet, foo() doesn't explicitly return anything, so it is considered undefined.

not defined

When a variable is not declared or cannot be accessed within a certain scope, it is said to be not defined. This typically results in a ReferenceError being thrown by JavaScript.

Let's understand through an example

Example :

console.log(y); // ReferenceError: y is not defined
function bar() {
    var z = 10;
    console.log(z); // 10
}
bar();

Output :

Uncaught ReferenceError: y is not defined

In the above code snippet, we are trying to access y which is not declared. So, it throws a ReferenceError: y is not defined error.

In summary, undefined is a specific value that indicates the absence of a value assigned to a variable or returned by a function, while not defined refers to a variable that has not been declared or is not accessible within the current scope, resulting in a ReferenceError.

and that's it!

Conclusion

That's fantastic! I hope you understand the difference between undefined and not defined.

Additionally, make sure to explore the documentation and the examples on the undefined and not defined. They provide a wealth of information and inspiration.

I'm glad I could help. If you have any more questions along the way, feel free to reach out. Happy coding!

0
Subscribe to my newsletter

Read articles from Reddy Divya directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Reddy Divya
Reddy Divya

Passionate React JS developer on a journey to build captivating web experiences. Sharing insights and knowledge through blogging to empower the developer community.