您的位置:

js判断是否是数组

一、typeof运算符判断

对于js的数据类型判断,一般都会用typeof运算符,但是typeof运算符判断数组的结果是'object',这是因为数组本质上是一个对象,它的每个元素都有自己的属性名(索引值),但数组拥有的方法和属性,普通对象并没有,因此这种方法并不靠谱。

let arr = [1, 2, 3];
console.log(typeof arr); // 'object'

二、Array.isArray()方法判断

Array.isArray()方法的作用就是判断某个值是否为数组,它是ES5中新增加的方法,因此在ES5以下的版本中无法使用。它的使用非常简单,就是直接调用这个方法,如果是数组则返回true,否则返回false。

let arr = [1, 2, 3];
console.log(Array.isArray(arr)); // true

需要注意的是,Array.isArray()方法虽然简单方便,但是一定要注意是使用它而不是typeof运算符进行判断。

三、instanceof运算符判断

instanceof运算符也可以用来判断某个值是否为数组,它的原理是通过判断某个实例是否是某个构造函数的实例。因为数组是Object的实例,并且数组的原型链中还有Array这个构造函数,所以可以使用instanceof来判断。

let arr = [1, 2, 3];
console.log(arr instanceof Array); // true

四、Object.prototype.toString.call()方法判断

Object.prototype.toString.call方法虽然麻烦一些,但是它是最为准确的一种方法。因为所有的对象在调用Object.prototype.toString方法的时候都会返回"[object Object]",但是对于数组来说,调用toString方法会返回"[object Array]",因此我们可以通过这种方式来判断某个值是否为数组。

let arr = [1, 2, 3];
console.log(Object.prototype.toString.call(arr) === "[object Array]"); // true

五、总结

对数组判断,推荐使用Array.isArray()或Object.prototype.toString.call()方法来进行判断。而typeof运算符和instanceof运算符用来判断数据类型的时候,则不适合判断数组。

js判断是否是数组

2023-05-21
JS判断数组是否为空

2023-05-17
使用JS判断是否为undefined

2023-05-18
php判断是否整数,php判断是否为整数

2022-11-30
JS判断字符串是否在数组中

2023-05-20
关于js判断是否是checkbox的信息

本文目录一览: 1、js 判断 checkbox 2、使用js全部选中checkbox,并且进行判断 3、JS判断单个checkbox是否被选中 4、javascript 怎么判断checkbox是否

2023-12-08
js判断是否支持webassembly,js判断是否存在

本文目录一览: 1、js如何判断浏览器是否支持html5 2、WebAssembly 的出现是不是意味着 Javascript 要完 3、js 判断 是否支持 Clipboard 复制功能 js如何判

2023-12-08
JS判断对象是否存在

2023-05-19
javascript简要笔记,JavaScript读书笔记

2022-11-17
Js判断数组中是否存在某值

2023-05-23
JS判断字符串是否为数字

2023-05-18
python判断是否json的简单介绍

本文目录一览: 1、python怎么判断json 字符串含有某一个字符 2、python json快速解析命令 3、py3笔记8:json结构的校验 4、python json 资料判断 true 或

2023-12-08
upload判断是否,upload判断是否有文件

2022-11-25
js实现判断年份为闰年的代码,js判断今年是否为闰年

本文目录一览: 1、怎么用“JS实现”判断闰年? 2、用JS实现判断闰年 3、JS如何优雅的判断闰年 怎么用“JS实现”判断闰年? function isLeapYear(year) //闰年能被4整

2023-12-08
重学java笔记,java笔记总结

2022-11-23
JS数组是否包含某个元素判断详解

2023-05-23
js判断上传文件是否选择代码,js判断上传的是不是图片

本文目录一览: 1、如何判断uploadify插件是否选择了文件 2、上传文件前先用js判断有没有选择文件 3、用JS怎么判断上传文件控件是否未选择文件 如何判断uploadify插件是否选择了文件

2023-12-08
Java判断数组是否为空

2023-05-11
JS判断复选框是否选中

2023-05-18
JS判断输入框是否为数字详解

2023-05-19