var a;
var b = null;
var c = "";
// d is not declare
// var a;
typeof(a) return undefined
a == undefined return true
a === undefined return true
// var b = null;
typeof(b) return object
b == undefined return true
b === undefined return false
// var c = "";
typeof(c) return string
c == undefined return false
c === undefined return false
// d is no declare
typeof(d) return undefined
d == undefined throw exception
d === undefined throw exception