sehummel
sehummel

Reputation: 5568

Checking to see if a value exists in Javascript

How do I prevent a Javascript alert from firing if the alert value is undefined? In other words, something like this:

if (alert(message) != 'undefined') {
        alert(message);
    }

Upvotes: 6

Views: 3507

Answers (1)

Felix Kling
Felix Kling

Reputation: 816522

Use typeof:

if (typeof message !== 'undefined')

Don't put alert(message) into the if expression, otherwise you will execute alert (which we want to avoid before we know the type of message) and the return value (which is also undefined btw ;)) will be compared to undefined.

Update Clarification for !==:

This operator not only compares the value of two operands but also the type. That means no type coercion is done:

42 == "42" // true
42 === "42" // false

In this case it is not really necessary because we know that typeof always returns a string but it is good practice and if you use it thoroughly and consistently, it is more clear where you really want to have type coercion and where not.

Upvotes: 10

Related Questions