javascript 数组常用函数

因为typeof Array == object,

故判断数组是否是数组需要两个方法

1Array.isArray()

2function isArray(x) {

 return x.constructor.toString().indexOf("Array") > -1;
} 

3

fruits instanceof Array 

4 pop()

5 push()

6 shift()

7 unshift()

8splice(定义新元素应该被添加(接入)的位置,删除的元素个数,增加的元素)

9 concat concat 不会改变原有数组而是创建一个新的数组

10 slice(start,end) 当给 slice() 方法赋予两个参数时,它从 start 参数中选择数组元素,直到(但不包括)end 参数

11 sort()  sort 排序默认是按照字符串大小进行排序,因此我们需要设置比值函数来重新定义排序规则 sort(function(a,b){a-b}) 升序

Javascript 不存在数组内部求最大最小值的内置函数,所以可以通过排序后取最小/大索引的方法取得极值,还可以通过Math.max.apply(Array)

Array.forEach()

forEach() 方法为每个数组元素调用一次函数(回调函数)。

Array.map()

map() 方法通过对每个数组元素执行函数来创建新数组。

map() 方法不会对没有值的数组元素执行函数。

Array.filter()

filter() 方法创建一个包含通过测试的数组元素的新数组。

map() 方法不会更改原始数组。

这个例子将每个数组值乘以2:

Array.reduce()

reduce() 方法在每个数组元素上运行函数,以生成(减少它)单个值。

reduce() 方法在数组中从左到右工作。另请参见 reduceRight()。

reduce() 方法不会减少原始数组。

Array.reduceRight()

reduceRight() 方法在每个数组元素上运行函数,以生成(减少它)单个值。

reduceRight() 方法在数组中从左到右工作。另请参见 reduce()。

reduceRight() 方法不会减少原始数组。

Array.every()

every() 方法检查所有数组值是否通过测试。

这个例子检查所有数组值是否大于 18

Array.some()

some() 方法检查某些数组值是否通过了测试。

这个例子检查某些数组值是否大于 18:

Array.indexOf()

indexOf() 方法在数组中搜索元素值并返回其位置。

注释:第一个项目的位置是 0,第二个项目的位置是 1,以此类推。

Array.lastIndexOf()

Array.lastIndexOf() 与 Array.indexOf() 类似,但是从数组结尾开始搜索。

Array.find()

find() 方法返回通过测试函数的第一个数组元素的值。

这个例子查找(返回)大于 18 的第一个元素的值:

Array.findIndex()

findIndex() 方法返回通过测试函数的第一个数组元素的索引。

 
posted @ 2020-07-20 11:01  油闷大虾啊  阅读(194)  评论(0编辑  收藏  举报