🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[toc] #### 判断是否为数组的四种方法 两种安全: ```js let arr = [1, 2, 3, 4]; console.log(Array.isArray(arr)); // true console.log(Object.prototype.toString.call(arr) === "[object Array]"); // true ``` 两种不安全: ```js console.log(arr instanceof Array, "arr"); // true console.log(arr.constructor === Array); // true ``` #### instanceof为什么不安全 + instanceof 判断目标是否在某个原型链上,他可以判断数组为数组,也可以判断数组为对象 + instanceof操作符假定是只有一种全局环境 + 如果网页中有多个框架,iframe,如果从一个框架向另一个框架传入数组,那么传入的数组与第二个框架中原生创建的数组分别具有不同的构造函数 #### constructor 为什么不安全 因为对象的 constructor 是可以被修改的 ```js ```