Skip to content
Advertisement

Check if variable is false and not either true or undefined

What’s the best way to check if myvar javascript variable === false or not (it may be undefined as well).

if (myvar === false)

would be fine but myvar it could be undefined. Only false value is acceptable, not undefined.

Any shorter than if (typeof myvar !== "undefined" && myvar === false)?

Advertisement

Answer

If the variable is declared then:

if (myvar === false) {

will work fine. === won’t consider false to be undefined.

If it is undefined and undeclared then you should check its type before trying to use it (otherwise you will get a reference error).

if(typeof myvar === 'boolean' && myvar === false) {

That said, you should ensure that the variable is always declared if you plan to try to use it.

var myvar;
// ...
// some code that may or may not assign a value to myvar
// ...
if (myvar === false) {
User contributions licensed under: CC BY-SA
3 People found this is helpful
Advertisement