1、typeof obj === 'object'判断obj是不是object类型 存在必定的弊端。以下:prototype
let obj = {}, let arr = [] console.log(typeof obj === 'object') // true console.log(typeof arr === 'object') // true
2、从上可知typeof并不能准确的判断数据类型, 能够经过Object.prototype.toString.call(obj) === '[object Object]' 来判断是否是Object类型的。code
let obj = {} let arr = [] console.log(Object.prototype.toString.call(obj)) // [object Object] console.log(Object.prototype.toString.call(arr)) // [object Array]