我们如何检查对象是否是Javascript中的数组?
有多种方法可以检查对象是否为JavaScript中的数组。让我们看看其中的一些-
使用Array.isArray()
所有现代的浏览器都支持此方法。
示例
console.log(Array.isArray(undefined)) console.log(Array.isArray(null)) console.log(Array.isArray("")) console.log(Array.isArray({})) console.log(Array.isArray([])) console.log(Array.isArray([1, "hello"])) console.log(Array.isArray(new Array()))
输出结果
false false false false true true true
构造函数检查
您可以使用arr.constructor===Array来确定对象是数组。虽然这不适用于所有对象。
示例
// This will fail: console.log(undefined.constructor === Array) // This will fail: console.log(null.constructor === Array) console.log("".constructor === Array) console.log({}.constructor === Array) console.log([].constructor === Array) console.log([1, "hello"].constructor === Array) console.log(new Array().constructor === Array)
输出结果
false false true true true