Chapter 15. Undefined

Conceptual Overview of the undefined Value

The undefined value is used by JavaScript in two slightly different ways.

The first way it’s used is to indicate that a declared variable (e.g., var foo) has no assigned value. The second way it’s used is to indicate that an object property you’re trying to access is not defined (i.e., it has not even been named), and is not found in the prototype chain.

Below, I examine both usages of undefined by JavaScript.

Live Code

<!DOCTYPE html><html lang="en"><body><script>

var initializedVariable; // declare variable

console.log(initializedVariable); // logs undefined
console.log(typeof initializedVariable); / confirm that JavaScript returns undefined /

var foo = {};

console.log(foo.bar); // logs undefined, no bar property in foo object
console.log(typeof foo.bar); // confirm that JavaScript returns undefined

</script></body></html>

Note

It is considered good practice to allow JavaScript alone to use undefined. You should never find yourself setting a value to undefined, as in foo = undefined. Instead, null should be used if you are specifying that a property or variable value is not available.

JavaScript ECMAScript 3 Edition (and Later) Declares the undefined Variable in the Global Scope

Unlike previous versions, JavaScript ECMAScript 3 Edition (and later) has a global variable called undefined declared in the global scope. Because the variable is declared, and not assigned a value, the undefined variable is set to undefined ...

Get JavaScript Enlightenment now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.