搜索
写经验 领红包
 > 育儿

js如何判断变量是否为数组类型(js判断变量是否为数字)

导语:JS如何判断变量是否为数组

js如何判断变量是否为数组类型(js判断变量是否为数字)

我们都知道JavaScript的typeof可以检测出变量的数据类型,但是typeof返回的类型只有undefined、boolean、string、number、object、function。那如何判断一个变量是不是数组呢?

今天来汇总一下JavaScript中能判断数组的方法。

1.instanceof

var arr = [];console.log(arr instanceof Array);//true

2.constructor

var arr = [];console.log(arr.constructor === Array);//true

3.Object.prototype.toString

var arr = [];console.log(Object.prototype.toString.call(arr));//[object Array]

4.Array.isArray()

var arr = [];console.log(Array.isArray(arr));//true

isArray从ES5开始支持,由于该方法是C++实现的,我还没有搞明白是如何判断的。

JQuery中的isArray方法使用了3和4两种方法。首先判断浏览器是否支持Array.isArray方法,如果支持就用Array.isArray判断。否则就用Object.prototype.toString.call()来判断。

本文内容由小思整理编辑!