网站首页 » 前端开发 » JavaScript » 数组(Array)的属性和方法
上一篇:
下一篇:

数组(Array)的属性和方法

平时数组使用得比较多,但常常会有些方法没记住它的用法,比如:某些方法眼熟但具体的用法却不太清楚。这样的情况在我身体已经发生了很多次,所以我有必要把数组的一些属性和方法整理出来,即使自己忘记了也可以有更加直接的查阅入口。说走就走的旅程,数组可以大致分成两块属性和方法。

Array 属性

Array 的属性其实也不多,那那么两三个,具体如下:

Array.length

返回数组成员个数。

Array.prototype

Array.prototype属性表示Array构造函数的原型,这个属性可以允许你给所有的数组对象添加属性和方法。

Array 方法

Array.prototype.from()

ES6 新增方法。这个方法可以把类数组的对象或者可遍历对象转化成数组对象。

Array.prototype.of()

ES6 新增方法。用于将一组值转化为数组。这个方法主要是弥补了数组构造方法 Array() 的不足。因为参数个数的不同会导致 Array() 的行为有差异。

Array.prototype.isArray()

ES6 新增方法。判断目标元素是否是一个数组,返回布尔值。

Array.prototype.copyWithin()

ES6 新增方法。在当前数组内部将指定位置的成员复制到其他位置(会覆盖原有成员),然后返回当前数组。

Array.prototype.copyWithin(target, start = 0, end = this.length)

它接受三个参数:

  • target(必选):从该位置开始替换数据
  • start(可选):从该位置开始读取数据,默认为 0。如果为负值,表示倒数。
  • end(可选):到该位置前停止读取数据,默认等于数组长度。如果为负值,表示倒数。

Array.prototype.entries()

ES6 新增方法。遍历数组的键值对。

Array.prototype.keys()

ES6 新增方法。遍历数组的键名。

Array.prototype.values()

ES6 新增方法。遍历数组的键值。

Array.prototype.fill()

ES6 新增方法。使用给定值填充一个数组。

Array.prototype.fill(value, start = 0, end = this.length)

fill 方法可以接受三个参数

  • value:用于填充的值
  • start:填充开始位置
  • end:填充结束位置

Array.prototype.find()

ES6 新增方法。找出第一个符合条件的数组成员,它的参数是一个回调函数,所有数组成员都会依次执行这个回调函数。直到找出第一个则返回 true,然后返回该成员。如果没找到符合条件的成员,就返回 undefined。

Array.prototype.fillIndex()

ES6 新增方法。返回第一个符合条件的数组成员的位置,如果没找到,则返回 -1。

Array.prototype.includes()

ES6 新增方法。返回一个布尔值,表示某个数组是否包含给定的值。

Array.prototype.concat()

将多个数组合并成一个数组,返回合并后的新数组。

Array.prototype.every()

检测数组的每一个成员,是否都符合回调用函数中指定的规则,返回一个布尔值。回调函数callback(currentValue, index, array)可接受三个参数:当前值,当前值索引,数组对象。

Array.prototype.filter()

检测数组中符合回调函数中指定规则的成员,并且用这些成员生成一个新的数组。filter 相当于一个过滤器。

Array.prototype.forEach()

遍历数组中的每一个元素,方法可接受一个回调函数,回调函数可接受三个参数:value、index、array

  • value:当前值
  • index:当前值的下标
  • array:当前在遍历的对象

Array.prototype.join()

把数组(或者类数组对象)成员拼接成一个字符串,并返回这个字符串。可接受一个参数作为数组成员间的连接符。

Array.prototype.lastIndexOf()

对数组成员进行检索(从后往前检索),如果要检索的成员不存在,则该方法返回 -1。

Array.prototype.map()

map 方法接受一个回调函数作为参数,返回回调函数处理每一个数组成员过后的结果所组成的一个新数组。

Array.prototype.pop()

删除数组的最后一个成员。

Array.prototype.push()

向数组最后添加一个或者多个成员,返回数组的新长度。

Array.prototype.reduce()

对数组中的所有元素调用指定的回调函数。该回调函数的返回值为累积结果,并且此返回值在下一次调用该回调函数时作为参数提供。

reduce(callback,initialVaule) 方法接受两个参数:回调函数和初始值。callback(previousValue, currentValue, index, array),可以接受四个值:前一个成员,当前成员,索引,当成员的索引,数组对象。

Array.prototype.reduceRight()

按降序对数组中的所有元素调用指定的回调函数。该回调函数的返回值为累积结果,并且此返回值在下一次调用该回调函数时作为参数提供。

reduceRight(callback,initialVaule) 方法接受两个参数:回调函数和初始值。callback(previousValue, currentValue, index, array),可以接受四个值:前一个成员,当前成员,索引,当成员的索引,数组对象。

Array.prototype.reverse()

反转排序。

Array.prototype.shift()

删除数组的每一个成员。返回删除的值。

Array.prototype.unshift()

在数组的最前面添加一个或者多个元素。返回数组的新长度。

Array.prototype.slice()

返回一个数组中的一部分。slice(start,  end) 可以接受两个参数:开始位置和结束位置。

Array.prototype.some()

检测数组的每一个成员,是否有符合回调用函数中指定的规则的成员,返回一个布尔值。回调函数callback(currentValue, index, array)可接受三个参数:当前值,当前值索引,数组对象。

Array.prototype.sort()

对数组进行排序,可接受一个回调函数callback(a,b),a 大于 b,返回正值;a 小于 b,返回负值,a 等于 b,返回零。

Array.prototype.splice()

从一个数组中移除元素,如有必要,在所移除元素的位置上插入新元素,并返回所移除的元素。

splice(start, deleteCount, value1,value2,…) 方法的第一个函数是开始的位置,第二个参数是要删除成员的个数,从第三个参数开始就是要添加的成员。

Array.prototype.toString()

返回数组的字符串表示形式。

有关数组的属性和方法就到此为止,这样的整理也能给你带来那怕一点点帮助。

  • 微信扫一扫,赏我

  • 支付宝扫一扫,赏我

声明

原创文章,不经本站同意,不得以任何形式转载,如有不便,请多多包涵!

本文永久链接:http://yunkus.com/array-properties-and-methods/

Leave a Reply

Your email address will not be published. Required fields are marked *

评论 END