1.typeof
适合基本类型及function检测,遇到null失效
2.instanceof
用于自定义对象,也可以用来检测原生对象(在不同iframe和window间时失效)
3.Object.prototype.toString
Object.prototype.toString.call([])==="[object Array]";
Object.prototype.toString.call(function(){})==="[object Function]"
Object.prototype.toString.call(null)==="[object Null]"
Object.prototype.toString.call(undefined)==="[object Undefined]"
Object.prototype.toString.call({})==="[object Object]"
注意IE6/7/8 Object.prototype.toString.call(null)返回"[object Object]"