js中数组的常用方法

在js中数组使用时有许多常用的方法

今天我就来盘点一下那些在我们运用数组时常用的方法:

from

从一个类似数组或可迭代对象中创建一个新的数组实例。

语法:Array.from(arrayLike[, mapFn[, thisArg]])

参数:arrayLike
想要转换成数组的伪数组对象或可迭代对象。
mapFn (可选参数)
如果指定了该参数,新数组中的每个元素会执行该回调函数。
thisArg (可选参数)
可选参数,执行回调函数 mapFn 时 this 对象。
返回值:
一个新的数组实例。

例子:
	Array.from('foo');      // ["f", "o", "o"]

isArray

用于确定传递的值是否是一个 Array。

语法:Array.isArray(obj)

参数:
obj
需要检测的值。

例子:
	Array.isArray([1, 2, 3]);  // true

concat

用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。

语法:var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])

参数:
valueN
将数组和/或值连接成新数组。

例子:
var array1 = ['a', 'b', 'c'];
var array2 = ['d', 'e', 'f'];
console.log(array1.concat(array2));
// expected output: Array ["a", "b", "c", "d", "e", "f"]

every
测试数组的所有元素是否都通过了指定函数的测试。

语法:arr.every(callback[, thisArg])

参数:
callback
用来测试每个元素的函数。
thisArg
执行 callback 时使用的 this 值。

fill

用一个固定值填充一个数组中从起始索引到终止索引内的全部元素。不包括终止索引。

语法:arr.fill(value[, start[, end]])

参数:

value
用来填充数组元素的值。
start (可选)
起始索引,默认值为0。
end (可选)
终止索引,默认值为 this.length。

返回值:修改后的数组。

find

返回数组中满足提供的测试函数的第一个元素的值。否则返回 undefined。

语法:arr.find(callback[, thisArg])

参数:callback
在数组每一项上执行的函数,接收 3 个参数:
element
当前遍历到的元素。
index(可选)
当前遍历到的索引。
array(可选)
数组本身。
thisArg(可选)
执行回调时用作this 的对象。

indexOf

返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。

语法:arr.indexOf(searchElement)
	arr.indexOf(searchElement[, fromIndex = 0])

参数:
searchElement:要查找的元素
fromIndex:开始查找的位置。如果该索引值大于或等于数组长度,意味着不会在数组里查找,返回-1。如果参数中提供的索引值是一个负值,则将其作为数组末尾的一个抵消,即-1表示从最后一个元素开始查找,-2表示从倒数第二个元素开始查找 ,以此类推。 注意:如果参数中提供的索引值是一个负值,并不改变其查找顺序,查找顺序仍然是从前向后查询数组。如果抵消后的索引值仍小于0,则整个数组都将会被查询。其默认值为0.

返回值:首个被找到的元素在数组中的索引位置; 若没有找到则返回 -1

join

将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。

语法:arr.join([separator])

参数:
separator:指定一个字符串来分隔数组的每个元素。如果需要,将分隔符转换为字符串。如果省略(),数组元素用逗号分隔。默认为 “,”。如果separator是空字符串(""),则所有元素之间都没有任何字符。

返回值:一个所有数组元素连接的字符串。如果 arr.length 为0,则返回空字符串。

map

创建一个新数组,其结果是该数组中的每个元素都调用一个提供的函数后返回的结果。

语法:var new_array = arr.map(function callback(currentValue[, index[, array]]) {
				 // Return element for new_array 
		}[, thisArg])

参数:、callback
生成新数组元素的函数,使用三个参数:
currentValue
callback 数组中正在处理的当前元素。
index(可选)
callback 数组中正在处理的当前元素的索引。
array(可选)
callback map 方法被调用的数组。
thisArg(可选)
执行 callback 函数时使用的this 值。

返回值:一个新数组,每个元素都是回调函数的结果。

pop

从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。

语法:arr.pop()

返回值:从数组中删除的元素(当数组为空时返回undefined)。

reverse

将数组中元素的位置颠倒,并返回该数组。该方法会改变原数组。

语法:arr.reverse()

sort

用原地算法对数组的元素进行排序,并返回数组。排序算法现在是稳定的。默认排序顺序是根据字符串Unicode码点。

语法:arr.sort([compareFunction])

参数:
compareFunction (可选)
用来指定按某种顺序进行排列的函数。如果省略,元素按照转换为的字符串的各个字符的Unicode位点进行排序。

返回值:排序后的数组。请注意,数组已原地排序,并且不进行复制。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值