1. typeof (实际使用往往用于检测有没有定义这个变量)
判断基本数据类型
typeof
操作符返回一个字符串,表示未经计算的操作数的类型。
底层的检测机制是 二进制
-
二进制开头数字 类型
-
000 对象
-
1 整数
-
010 浮点数
-
100 字符串
-
110 布尔
-
000000…. null
-
-2^30 undefined
-
…
console.log(typeof (1));//'number'
console.log(typeof ('aaa'));//'string'
console.log(typeof (true));//'boolean'
console.log(typeof (null));//'object'
console.log(typeof (underfind));//'undefined'
console.log(typeof ({ a: 1 }));//'object'
console.log(typeof ([1, 2, 3]));//'object'
console.log(typeof (function () { }));//'function'
2.instanceof (判断引用类型)
instanceof
运算符用于检测构造函数的 prototype
属性是否出现在某个实例对象的原型链上。
console.log([1,2,3] instanceof Array);//true
console.log([1, 2, 3] instanceof Object);//true
console.log(function(){} instanceof Function);//true
console.log(function(){} instanceof Object);//true