1.typeof 一元运算符
特例
typeof null = object .因为null可以看做空的对象引用。
typeof undenfined= undenfined. undenfined 未定义变量
typeof function = function .因为在文档中规定。 function是特殊的对象。 而其他的array date等归为一类对象
2.instanceof 二元运算
用来测试一个对象在其原型链中是否存在一个构造函数的 prototype 属性。
重点对象。重点对象。重点对象。
因此。复杂类型 instanceof object 都会返回true
如: Function instanceof object === true
3. Object.prototype.toString
原型链方法。此方法调用顶层的toString. 返回的值如下。
console.log(Object.prototype.toString.call(123)) //[object Number]
console.log(Object.prototype.toString.call('123')) //[object String]
console.log(Object.prototype.toString.call(undefined)) //[object Undefined]
console.log(Object.prototype.toString.call(true)) //[object Boolean]
console.log(Object.prototype.toString.call({})) //[object Object]
console.log(Object.prototype.toString.call([])) //[object Array]
console.log(Object.prototype.toString.call(function(){})) //[object Function]