1.typeof适合基本类型及function检测,但不适合null,遇到会失效。 //typeof null; ==> "object" typeof NaN; =>number
2.Class,通过{}.toString拿到,适合内置对象和基元类型,遇到null和undefined失效; //object.prototype.toString.apply()
3.instanceof适合自定义对象,也可以用来检测原生对象,在不同iframe和widow间检测时失效
4.constructor
5.duck type