typeof [value] 检测数据类型的运算符
[example] instanceof [class] 检测某一个实例是否属于这个类
[example].constructor === [class] 检测实例和类关系,从而检测数据类型
Object.prototype.toString.call([value]) 检测数据类型
typeof的细节点
typeof 检测的结果首先是一个字符串,字符串中包含了对应的数据类型(例如:“number” , "string" , "boolean" , "undefined" , "object" , "function" , "symbol" , "bigint")
特殊的检测结果: NaN / Infinity 都是数字类型的,检测出来的结果是 “number”
typeof null 的结果是 “object” , (这是浏览器的BUG,原因:所有的值再计算机中都已进行二进制编码存储,浏览器把前三位是000 当作对象,而null 的二进制前三位就是 000 , 所以被识别为对象,但是它不是对象,是空对象指针,是基本类型值)