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]"

 

posted @ 2018-09-03 17:23  一抹夏忧☆  阅读(1816)  评论(0编辑  收藏  举报