How can I Check for "undefined" in JavaScript?

Matthew C.

The Problem

You want to check if a value is undefined. For example, you may want to check if the value returned from a fetch request is defined before trying to access its properties. How do you do this?

The Solution

There are two common ways to check if a value is undefined.

You can use the strict equality operator (===) to check if a value is undefined:

value === undefined

You can also check if the type of a value is undefined using the typeof operator:

typeof value === 'undefined'

An interesting thing to note is that undefined is not a reserved word in JavaScript. A reserved word is a keyword that can’t be used as an identifier for naming things such as variables, properties, or functions. Reserved words include: import, const, and return. You can use undefined as a variable name, as long as the variable is not in the global scope. As can be seen in the example code below, you can make the typeof undefined equal to string:

function myFunction() { const undefined = "string value"; console.log(undefined); // string value console.log(typeof undefined); // string } myFunction();

You can name variables undefined, but you shouldn’t because it will create bugs.

Get Started With Sentry

Get actionable, code-level insights to resolve JavaScript performance bottlenecks and errors.

  1. Create a free Sentry account

  2. Create a JavaScript project and note your DSN

  3. Grab the Sentry JavaScript SDK

<script src="https://browser.sentry-cdn.com/7.104.0/bundle.min.js"></script>
  1. Configure your DSN
Sentry.init({ dsn: 'https://<key>@sentry.io/<project>' });

Check our documentation for the latest instructions.

Loved by over 4 million developers and more than 90,000 organizations worldwide, Sentry provides code-level observability to many of the world’s best-known companies like Disney, Peloton, Cloudflare, Eventbrite, Slack, Supercell, and Rockstar Games. Each month we process billions of exceptions from the most popular products on the internet.

Share on Twitter
Bookmark this page
Ask a questionJoin the discussion

Related Answers

A better experience for your users. An easier life for your developers.

    TwitterGitHubDribbbleLinkedinDiscord
© 2024 • Sentry is a registered Trademark
of Functional Software, Inc.