判断对象或数组

1、Array.isArray()    判断数组时--首推

var a = [];
Array.isArray(a);  // true
var a ={};
Array.isArray(a);  // false

2、constructor属性   判断对象时--首推   (可判断 Arrray、Object、Number、Boolean、String)

var a = [];
a.constructor === Array     // true

var a = [];
a.constructor === Object   // false

var a = {};
a.constructor === Array    // false

var a = {};
a.constructor === Object   // true

3、instanceof    (可判断 Arrray、Object。不推荐)

var a =[];
a instanceof Array    // true

var a ={};
a instanceof Object   // true

4、$.isPlainObject() 
判断指定参数是否是一个纯粹的对象(所谓”纯粹的对象”,就是该对象是通过”{}”或”new Object”创建的。)

var a = {};  //  或 var a = new Object();
$.isPlainObject(a)   // true

5、typeof  (常用,但不是很准确)

// 根据typeof判断对象也不太准确
      表达式      返回值
typeof   undefined  'undefined'
typeof   null      'object'
typeof   true      'boolean'
typeof   123      'number'
typeof   "abc"     'string'
typeof   function(){} 'function'
typeof   {}       'object'
typeof   []       'object'

 

你可能感兴趣的:(判断对象或数组)