js判断是否为对象

1、toString() 第一选择(注意里面的第一个object是小写 ’[object Object]‘ )

'[object Object]'    之前看别的文章,楼主那个憨批写成大写了,再怎么判断都不对。

let obj = {} 

Object.prototype.toString.call(obj) === '[Object Object]'

2. constructor

let obj = {}

obj.constructor === Object

3.instanceof

 let obj = {}

obj instanceof Object//truelet 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'


原文地址:https://blog.csdn.net/zhangjing0320/article/details/81230170

你可能感兴趣的:(js判断是否为对象)