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操作符用于判断对象是不是类的实例。使用方法是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]"
原文地址:https://www.cnblogs.com/web-record/p/9579619.html