《每天十分钟》-红宝书第4版-集合引用类型(三)

数组还有一些常见api,还有一种特别的定型数组

操作方法

concat()
slice()
splice()

注意 如果 slice()的参数有负值,那么就以数值长度加上这个负值的结果确定位置。比
如,在包含 5 个元素的数组上调用 slice(-2,-1),就相当于调用 slice(3,4)。如果结
束位置小于开始位置,则返回空数组。

搜索和位置方法

indexOf()
lastIndexOf()

indexOf()和 lastIndexOf()都返回要查找的元素在数组中的位置,如果没找到则返回-1。
indexOf 从前向后,lastIndexOf 从后向前

includes()

includes()返回布尔值

find()
findIndex()
find()和 findIndex()方法使用了断言函数。这两个方法都从数组的最小索引开始。find()返回
第一个匹配的元素,findIndex()返回第一个匹配元素的索引。

迭代方法

every():对数组每一项都运行传入的函数,如果对每一项函数都返回 true,则这个方法返回 true。
filter():对数组每一项都运行传入的函数,函数返回 true 的项会组成数组之后返回。
forEach():对数组每一项都运行传入的函数,没有返回值。
map():对数组每一项都运行传入的函数,返回由每次函数调用的结果构成的数组。
some():对数组每一项都运行传入的函数,如果有一项函数返回 true,则这个方法返回 true。

归并方法

reduce()和 reduceRight()。这两个方法都会迭代数
组的所有项,并在此基础上构建一个最终返回值。reduce()方法从数组第一项开始遍历到最后一项。
而 reduceRight()从最后一项开始遍历至第一项。

let values = [1, 2, 3, 4, 5]; 
let sum = values.reduce((prev, cur, index, array) => prev + cur); 
alert(sum); // 15

定型数组

设计定型数组的目的就是提高与 WebGL 等原生库交换二进制数据的效率。由于定型数组的二进制表示对操作系统而言是一种容易使用的格式,JavaScript 引擎可以重度优化算术运算、按位运算和其他对定型数组的常见操作,因此使用它们速度极快。

数组结束,接下来抄Map

人生天地之间,若白驹之过隙,忽然而已。

你可能感兴趣的:(《每天十分钟》红宝书第4版,javascript,前端)