方法一:
使用Array.isArray()
Array.isArray([]); //true
方法二:使用instanceof
操作符
var b = [];
b instanceof Array; //true
b instanceof Object; //true (因为数组是引用类型,typeof(b) //'object')
方法三:使用Object.prototype.toString.call()
方法
Object.prototype.toString.call(b) //'[object Array]'
Object.prototype.toString(b) //'[object Object]'
Array.isArray()
的特异性
对于数组这种特定的引用类型,JavaScript ES5引入了Array.isArray()
方法,它专门用于判断一个值是否为数组。虽然功能单一,但它提供了一种直接且明确的方式来识别数组,避免了使用更通用的instanceof
或Object.prototype.toString()
所带来的潜在复杂性。