1-Array.prototype.filter()
语法: var newArray = arr.filter(callback(element[, index[, array]])[, thisArg])
描述:filter
为数组中的每个元素调用一次 callback
函数,并利用所有使得 callback
返回 true 或等价于 true 的值的元素创建一个新数组。callback
只会在已经赋值的索引上被调用,对于那些已经被删除或者从未被赋值的索引不会被调用。那些没有通过 callback
测试的元素会被跳过,不会被包含在新数组中。
参数:callback
用来测试数组的每个元素的函数。返回 true
表示该元素通过测试,保留该元素, false
则不保留。它接受以下三个参数:
element
数组中当前正在处理的元素。
index
可选正在处理的元素在数组中的索引。
array
可选调用了 filter
的数组本身。
thisArg
可选执行 callback
时,用于 this
的值。
示列代码:
2.Array.prototype.every()
语法: arr.every(callback(element[, index[, array]])[, thisArg])
参数: callback
用来测试每个元素的函数,它可以接收三个参数:
element
用于测试的当前值。
index
可选用于测试的当前值的索引。
array
可选调用 every
的当前数组。
thisArg
执行 callback
时使用的 this
值。
示例代码:
***every
不会改变原数组。
3.Array.prototype.findIndex()
语法 : arr.findIndex(callback[, thisArg])
findIndex()方法返回数组种满足提供的测试函数的第一个元素的索引.若是没有找到对应的元素则返回-1.
参数:
callback
针对数组中的每个元素, 都会执行该回调函数, 执行时会自动传入下面三个参数:
element
当前元素。
index
当前元素的索引。
array
调用findIndex
的数组。
thisAr
可选。执行callback
时作为this
对象的值.
示列代码:
4.Array.prototype.forEach()
forEach()
方法对数组的每个元素执行一次给定的函数
语法: arr.forEach(callback(currentValue [, index [, array]])[, thisArg])
参数:
callback
为数组中每个元素执行的函数,该函数接收一至三个参数:
currentValue
数组中正在处理的当前元素。
index
可选数组中正在处理的当前元素的索引。
array
可选
forEach()
方法正在操作的数组。
thisArg
可选
可选参数。当执行回调函数 callback
时,用作 this
的值。
5.Array.prototype.splice()
splice()
方法通过删除或替换现有元素或者原地添加新的元素来修改数组,并以数组形式返回被修改的内容。此方法会改变原数组。
语法: array.splice(start[, deleteCount[, item1[, item2[, ...]]]])
参数:
start
指定修改的开始位置(从0计数)。如果超出了数组的长度,则从数组末尾开始添加内容;如果是负值,则表示从数组末位开始的第几位(从-1计数,这意味着-n是倒数第n个元素并且等价于array.length-n
);如果负数的绝对值大于数组的长度,则表示开始位置为第0位。
deleteCount
可选整数,表示要移除的数组元素的个数。
如果 deleteCount
大于 start
之后的元素的总数,则从 start
后面的元素都将被删除(含第 start
位)。
如果 deleteCount
被省略了,或者它的值大于等于array.length - start
(也就是说,如果它大于或者等于start
之后的所有元素的数量),那么start
之后数组的所有元素都会被删除。
如果 deleteCount
是 0 或者负数,则不移除元素。这种情况下,至少应添加一个新元素。
item1, item2, ...
可选
要添加进数组的元素,从start
位置开始。如果不指定,则 splice()
将只删除数组元素。
6.Array.prototype.some()
some()
方法测试数组中是不是至少有1个元素通过了被提供的函数测试。它返回的是一个Boolean类型的值。
语法: arr.some(callback(element[, index[, array]])[, thisArg])
参数:
callback
用来测试每个元素的函数,接受三个参数:
element
数组中正在处理的元素。
index
(可选 )数组中正在处理的元素的索引值。
array
可选
some()
被调用的数组。
thisArg
(可选) 执行 callback
时使用的 this
值。
返回值:数组中有至少一个元素通过回调函数的测试就会返回true
;所有元素都没有通过回调函数的测试返回值才会为false。
代码实列:
7-Array.prototype.join()
join()
方法将一个数组(或一个类数组对象)的所有元素连接成一个字符串并返回这个字符串。如果数组只有一个项目,那么将返回该项目而不使用分隔符。
语法: arr.join([separator])
参数: 指定一个字符串来分隔数组的每个元素。如果需要,将分隔符转换为字符串。如果缺省该值,数组元素用逗号(,
)分隔。如果separator
是空字符串(""
),则所有元素之间都没有任何字符。
返回值: 一个所有数组元素连接的字符串。如果 arr.length
为0,则返回空字符串。
**** 如果一个元素为 undefined
或 null
,它会被转换为空字符串。
代码实列:
8-Array.prototype.push()
push()
方法将一个或多个元素添加到数组的末尾,并返回该数组的新长度。
语法: arr.push(element1, ..., elementN)
参数: 被添加到数组末尾的元素。
返回值: 当调用该方法时,新的 length 属性值将被返回。
代码实列:
9-Array.prototype.reduce()
reduce()
方法对数组中的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值。
语法: arr.reduce(callback(accumulator, currentValue[, index[, array]])[, initialValue])
参数:
callback
: 执行数组中每个值 (如果没有提供 initialValue则第一个值除外
)的函数,包含四个参数:
accumulator
累计器累计回调的返回值; 它是上一次调用回调时返回的累积值,或initialValue
(见于下方)。
currentValue
数组中正在处理的元素。
index
(可选) 数组中正在处理的当前元素的索引。 如果提供了initialValue
,则起始索引号 为0,否则从索引1起始。
array
(可选) 调用reduce()
的数组
initialValue
(可选) 作为第一次调用 callback
函数时的第一个参数的值。 如果没有提供初始 值,则将使用数组中的第一个元素。 在没有初始值的空数组上调用 reduce 将报错。
返回值:函数累计处理的结果
代码实列:
10-Array.prototype.reverse()
reverse()
方法将数组中元素的位置颠倒,并返回该数组。数组的第一个元素会变成最后一个,数组的最后一个元素变成第一个。该方法会改变原数组。
语法: arr.reverse()
返回值:
颠倒后的数组。
实列代码:
11-Array.prototype.unshift()
unshift()
方法将一个或多个元素添加到数组的开头,并返回该数组的新长度(该方法修改原有数组)。
语法: arr.unshift(element1, ..., elementN)
参数: elementN
要添加到数组开头的元素或多个元素
返回值: 当一个对象调用该方法时,返回其 length 属性值。
代码实列:
12-Array.prototype.toString()
toString()
返回一个字符串,表示指定的数组及其元素。
语法: arr.toString()
返回值:一个表示指定的数组及其元素的字符串。
代码实列:
13-Array.isArray()
用于确定传递的值是否是一个 Array。
如果对象是 Array ,则返回true,否则为false。
语法: Array.isArray(obj)
参数:obj 需要被检测的值
代码实列:
14-Array.prototype.pop()
pop()
方法从数组中删除最后一个元素,并返回该元素的值。此方法更改数组的长度。
语法: arr.pop()
返回值:从数组中删除的元素(当数组为空时返回undefined)。
代码实列:
15-Array.prototype.concat()
concat()
方法用于合并两个或多个数组。此方法不会更改现有数组,而是返回一个新数组。
语法: var new_array = old_array.concat(value1[, value2[, ...[, valueN]]])
参数: valueN
可选
数组和/或值,将被合并到一个新的数组中。如果省略了所有 valueN
参数,则 concat
会返回调用此方法的现存数组的一个浅拷贝。详情请参阅下文描述。
返回值: 新的 Array 实例。
代码实列:
16.Array.prototype.includes()
includes()
方法用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true
,否则返回 false
。
语法: arr.includes(valueToFind[, fromIndex])
参数: valueToFind
需要查找的元素值。
返回值: 返回一个布尔值 Boolean 。 如果在数组中(或 fromIndex
指定的范围中)找到了 valueToFind
,则返回 true
,否则返回 false
。
示例代码:
17-js常用语法