如何用js判断一个对象是不是Array

如题所述

.如何用js判断一个对象是不是Array
1.Array.isArray(obj) 调用数组的isArray方法
2.obj instanceof Array 判断对象是否是Array的实例
3.Object.prototype.toString.call(obj) ===‘[object Array]’
Object.prototype.toString方法会取得对象的一个内部属性[[Class]],然后依据这个属性,返回一个类似于[object Array]的字符串作为结果,call用来改变toString的this指向为待检测的对象
4.判断对象是否有push等数组的一些方法。(这个方法有兼容问题,但也是一个简单易用的方法)

5.obj.constructor===Array //true

同理判断一个对象是否是函数:
console.log(Object.prototype.toString.call(obj)==='[object Function]') //true或false
温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-06-15
var arr = new Array();alert(arr instanceof Array);如果弹出 true 则证明是Array本回答被提问者采纳