首页 > 代码库 > js判断是否是object、array

js判断是否是object、array

isObj : function(object){// 判断是否是object
return object && typeof (object) == ‘object‘ && Object.prototype.toString.call(object).toLowerCase() == "[object object]";
},
isArray: function(object){// 判断是否是array
return Object.prototype.toString.call(o) === ‘[object Array]‘;  
}

在 JavaScript 里使用 typeof 来判断数据类型,只能区分基本类型,即 “number”,”string”,”undefined”,”boolean”,”object” 五种。

对于数组、函数、对象来说,其关系错综复杂,使用 typeof 都会统一返回 “object” 字符串。

要想区别对象、数组、函数单纯使用 typeof 是不行的,javascript中,通过Object.prototype.toString方法,判断某个对象值属于哪种内置类型。

例子:

var arr = [];
console.log(Object.prototype.toString.call(arr)) 

结果:

 "[object Array]"

js判断是否是object、array