JS判断变量是不是数组?方法大全!

简介: JS判断变量是不是数组?方法大全!

JS判断变量是不是数组,这往往是一道经典面试题。给大家分享我在工作中用到的五种方法:

1.方式一:采用Array构造对象的isArray方法
var arr = [1,2,3];
console.log( Array.isArray( arr ) ); 
返回true/false

2.方式二:采用instanceof数据类型检测

var arr = [1,2,3];
console.log( arr instanceof Array ); 
返回true/false

3.方式三:是否在Object大对象的原型链上出现并含有‘Array’标识

var arr = [1,2,3];
console.log( Object.prototype.toString.call(arr).indexOf('Array') > -1 );
返回true/false

4.方式四:Array原型的isPrototypeOf()方法

var arr = [1,2,3];
console.log(  Array.prototype.isPrototypeOf(arr) ) 
返回true/false

5.方式五:是否出现在这个变量自身的constructor属性中

var arr = [1,2,3];
console.log(  arr.constructor.toString().indexOf('Array') > -1 )
返回true/false

以上方法各有利弊,小伙伴们是否有其他更好的方法呢,欢迎留言探讨~

相关文章
|
4天前
|
JavaScript 前端开发
在 JavaScript 中,实现继承的方法有多种
【6月更文挑战第15天】JavaScript 继承常见方法包括:1) 原型链继承,利用原型查找,实例共享原型属性;2) 借用构造函数,避免共享,但方法不在原型上复用;3) 组合继承,结合两者优点,常用但有额外开销;4) ES6 的 class,语法糖,仍基于原型链,提供直观的面向对象编程。
18 7
|
1天前
|
JavaScript 前端开发
JS如何删除一个数组中的元素
JS如何删除一个数组中的元素
|
1天前
|
JavaScript 前端开发
JS中如何使用this方法
JS中如何使用this方法
|
1天前
|
JavaScript 前端开发 索引
JS如何清空一组数组
JS如何清空一组数组
|
1天前
|
JavaScript 前端开发
js数组包对象格式怎么根据不同的键值使用sort排序一组数组
js数组包对象格式怎么根据不同的键值使用sort排序一组数组
|
1天前
|
存储 JavaScript 前端开发
JS中数组去重的几种方法
JS中数组去重的几种方法
|
1天前
|
移动开发 JavaScript 前端开发
JS中页面跳转的几种方法
JS中页面跳转的几种方法
12 2
|
1天前
|
JavaScript 前端开发 安全
JavaScript中获取随机数的方法
JavaScript中获取随机数的方法
|
2天前
|
JavaScript 前端开发 数据处理
【JavaScript】JavaScript数组全方位探索指南:深入理解数组特性
【JavaScript】JavaScript数组全方位探索指南:深入理解数组特性
8 1
|
2天前
|
JavaScript 前端开发
JavaScript 数组的函数 map/forEach/reduce/filter
JavaScript 数组的函数 map/forEach/reduce/filter