All Articles

Not Defined vs. Undefined in JavaScript

There are two conditions that are closely worded but mean very different things in JavaScript. A variable can be undefined vs. not defined.

Let’s open up your browser’s console and take a closer look.

Suppose you type a + b and hit ENTER. You will see something like the following:

not defined

This ReferenceError is telling us that we have not declared the variable a and therefore it is not defined.

Let’s declare a and see what happens.

undefined

The let (as well as the var and const) keyword is used to declare a variable but since we have not assigned it an actual value, a is undefined.

The difference may feel subtle but they really are different things. In one case, a doesn’t even exist (i.e. not defined) and in the other it does but doesn’t have a value.

Published Jan 28, 2020

I love coffee, coding and writing.