检查对象是否为数组
如果对象是 Array,则 Array.isArray(obj) 返回 true,否则返回 false。
Array.isArray([]) // true
Array.isArray([1, 2, 3]) // true
Array.isArray({}) // false
Array.isArray(1) // false
在大多数情况下,你可以通过 instanceof 检查对象是否为 Array。
[] instanceof Array; // true
{} instanceof Array; // false
Array.isArray 具有优于使用 instanceof 检查的优势,即使阵列的原型已被更改它仍将返回 true,并且如果非阵列原型被更改为 Array 原型将返回 false。
var arr = [];
Object.setPrototypeOf(arr, null);
Array.isArray(arr); // true
arr instanceof Array; // false