js里怎么确定一个元素是不是数组

JavaScript015

js里怎么确定一个元素是不是数组,第1张

js方法可通过 instanceof 和 constructor 来判断,示例:

var arr = [1, 2, 3]

console.log(arr instanceof Array)  // true

console.log(arr.constructor == Array)  // true

另外,jquery封装了 isArray() 方法,可直接判断:

console.log($.isArray(arr))  // true

1.arr.indexOf(搜索元素,开始位置):

元素在数组中的位置,如果没搜索到则返回 -1

2.arr.includes(搜索元素):

如果是返回 true,否则false

3.filter() 方法:返回符合条件的元素组成的数组

4.array.find():返回找出第一个符合条件的数组元素

5.array.findIndex():返回第一个符合条件的数组元素的位置,

如果所有元素都不符合条件,则返回-1

6.传统for()循环

7.for...of

8.forEach

9.some():用于检测数组中的元素是否满足指定条件(函数提供)

如果有一个元素满足条件,则表达式返回true , 剩余的元素不会再执行检测。

如果没有满足条件的元素,则返回false。

10.every:用于检测数组中的元素是否满足指定条件(函数提供)

如果都满足条件,则表达式返回true ,

如果有一个不满足,则返回false。

可以使用数组的indexOf()方法,如果返回值为-1则说明不存在,如果返回值为大于-1的整数,则说明存在。例如:

var arr = [1,2,3]

arr.indexOf(1) // 返回0

arr.indexOf(5) // 返回-1

附:返回值为数组中的最靠前元素在数组的位置