JavaScript中检测一个变量是数组可以有两种方法:instanceof 和 Array.isArray()。
instanceof
instanceof 表示判断某个对象是否是另外一个构造函数的实例。
let arr = [1, 2, 3]; console.log(arr instanceof Array); // true
Array.isArray()
也可以使用Array对象isArray提供的方法进行判断,Array.isArray是es6推出的方法。
let arr = [1, 2, 3]; console.log(Array.isArray(arr)); // true
因为 instanceof 是依赖 Array 构造函数进行判断,如果一个页面有多个框架(iframe),那么可能有多个全局执行上下文。
如果要把数组对象传递给另外一个框架,那么会出现 Array 构造函数不同的情况。
所以推荐使用 Array.isArray() 方法进行判断。
转载请注明:快乐编程 » JavaScript检测数组的两种方法