Skip to main content

Check if value is undefined/null/NaN in JavaScript

In most JavaScript cases, evaluating variable is undefined, null, or NaN is very common. Their definition are shown below:
- undefined: a declared variable which is not assigned value.
- null: object value which means "no value".
- NaN: "Not-a-Number" value

Example for checking "undefined"


var a = 1;
var b;

console.log(a===undefined);
//false

console.log(b===undefined);
//true

//console.log(c===undefined);
//Error occurs due to "c" is not declared yet.

console.log(typeof c === undefined);
//false ("typeof" will return string value)

console.log(typeof c === 'undefined');
//true

Example for checking "null"


var a = null;
var b;

console.log(a===null);
//true

console.log(b===null);
//false

console.log(typeof a);
//object

Example for checking "NaN"


var a = NaN;
var b;
var c = 10;
var d = '10';
var e = 'string10';
var f = '10string';
var g = parseInt('10');
var h = parseInt('string10');
var i = parseInt('10string');

console.log(isNaN(a));
//true

console.log(isNaN(b));
//true

console.log(isNaN(c));
//false

console.log(isNaN(d));
//false

console.log(isNaN(e));
//true

console.log(isNaN(f));
//true

console.log(isNaN(g));
//false

console.log(isNaN(h));
//true

console.log(isNaN(i));
//false (i = 10)

References:
JavaScript Global Reference

Comments