var obj = [];
1.obj instanceof Array 判断对象是否是Array的实例
console.log(obj instanceof Array);//true
2.Object.prototype.toString.call(obj) ===‘[object Array]’
Object.prototype.toString方法会取得对象的一个内部属性[[Class]],然后依据这个属性,返回一个类似于[object Array]的字符串作为结果,call用来改变toString的this指向为待检测的对象
console.log(Object.prototype.toString.call(obj) ==='[object Array]');//true
3.Array.isArray(obj) 调用数组的isArray方法
console.log(Array.isArray(obj));//true
4.obj.constructor===Array
console.log(obj.constructor===Array);//true
5.判断对象是否有push等数组的一些方法。(有兼容问题,但简单易用)
另外:如果判断一个对象是否是函数可以使用Object.prototype.toString
console.log(Object.prototype.toString.call(obj)==='[object Function]') //true或false