js判断对象是否为数组

Posted 喃博思睿

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了js判断对象是否为数组相关的知识,希望对你有一定的参考价值。

1.ECMAScript5中有一个现成的方法:Array.isArray()。

var obj = {1:[1],2:[2]},
    arr = [1],
    str = "1";
Array.isArray(obj) // return false
Array.isArray(arr) // return true
Array.isArray(str) // return false

2.instanceof
instanceof操作符用于判断对象是不是类的实例。使用方法是object instanceof Class

var obj = {1:[1],2:[2]},
    arr = [1],
    str = "1";
obj instanceof Array // return false
arr instanceof Array // return true
str instanceof Array // return false

3.原型
所有javascript对象都派生自Object对象,可以通过call方法调用Object的prototype属性判断对象是不是数组。

var obj = {1:[1],2:[2]},
    arr = [1],
    str = "1";
Object.prototype.toString.call(obj); //return "[object Object]"
Object.prototype.toString.call(arr); //return "[object Array]"
Object.prototype.toString.call(str); //return "[object String]"

 

  



以上是关于js判断对象是否为数组的主要内容,如果未能解决你的问题,请参考以下文章

js 如何判断数组为空

js判断是否数组的方法

请问js怎么判断一个变量是对象还是数组呢?

js 中判断变量是数组还是对象,和判断对象是否为空

js简洁代码片段

C++中如何判断动态数组为空?要具体代码,谢谢