判断一个对象是不是数组的三种方法

Python016

判断一个对象是不是数组的三种方法,第1张

判断一个对象是不是数组的三种方法如下:

1、使用instanceof操作符

2、Array.isArray()  (ES5新增的方法)

3、使用Object.prototype上的原生toString()方法判断。

使用方法

Object.prototype.toString.call(value)

该方法不能检测非原生构造函数的函数名,因此定义的任何构造函数都将返回[object Object]。

.all?这是一个ruby方法,他的返回结果只有两个,true或者false,判断的是数组中每一个元素都是true的就返回true,只要有一个不是true就返回false,如[nil,22].all?返回的就是false。还有就是判断数组遍历运算过程中,每一个结果是不是true,如[1,2,3].all?{|w| w >1}这个的结果就是false。

你的例子中,作为判断对象的是一个空数组,不执行后面的代码,也没有一个元素是false的,所以返回的是true,这是我的见解