JavaScript 判断类型
1、toString() 第一选择
let obj = {}
Object.prototype.toString.call(obj) === '[Object Object]'
2、constructor
let obj = {}
obj.constructor === Object //true
let array = []
array.constructor === Array //true
let string= []
string.constructor === String//true
let d = null;d.constructor === Object //报错
3、instanceof
注意:使用instanceof对数组进行判断也是对象
let obj = {}
obj instanceof Object //true
let arr = []
arr instanceof Object //true
4、typeof
let obj = {}
typeof obj === Object
// 根据typeof判断对象也不太准确
表达式 返回值
typeof undefined 'undefined'
typeof null 'object'
typeof true 'boolean'
typeof 123 'number'
typeof "abc" 'string'
typeof function() {} 'function'
typeof {} 'object'
typeof [] 'object'

浙公网安备 33010602011771号