好家伙,
1.数组的复制和填充
批量复制方法 copyWithin(),以及填充数组方法fill()。
这两个方法的函数签名类似,都需要指定既有数组实例上的一个范围,包含开始索引,不包含结束索引。
使用这个方法不会改变数组的大小。
1.1.fill()方法
使用fill()方法可以向一个已有的数组中插入全部或部分相同的值。
开始索引用于指定开始填充的位置,它是可选的。
如果不提供结束索引,则一直填充到数组末尾。
负值索引从数组末尾开始计算。
const array =[0,0,0,0,0]; //填充5 array.fill(5); console.log(array); //从索引为3的数开始填充3 array.fill(3,3); console.log(array); //在索引为1到3的数中填充8 array.fill(8,1,3); console.log(array);
1.2.copyWithin()
copyWithin()会按照指定范围浅复制数组中的部分内容,然后将它们插入到指定索引开始的位置
const array =[0,1,0,2,0,3,0,4,0,5]; //复制索引0开始的内容,插入到索引8开始时的位置 array.copyWithin(8); console.log(array); //复制索引5开始的内容,插入到索引0开始的位置 array.copyWithin(0,5); console.log(array); //复制索引0到索引2的内容,插入到索引6开始的位置 array.copyWithin(6,0,2); console.log(array);
2.转换方法
前面提到过.所有对象都有toLocaleString()、toString()和valueof()方法。
其中,valueof()返回的还是数组本身。
tostring()返回由数组中每个值的等效字符串拼接而成的一个逗号分隔的三字符串。
let colors = ["red", "blue", "green"]; console.log(colors.toString()); console.log(colors.valueOf()); //使用join()方法可以使用不同的分隔符 console.log(colors.join("||"));
3.数组常用方法
方法slice()用于创建一个包含原有数组中一个或多个元素的新数组。
slice()方法可以接收一个或两个参数:返回元素的开始索引和结束索引。
如果只有一个参数,则slice()会返回该索引到数组末尾的所有元素。
如果有两个参数,则slice()返回从开始索引到结束索引对应的所有元素,其中不包含结束索引对应的元素。
记住,这个操作不影响原始数组。
或许最强大的数组方法就属splice()了,使用它的方式可以有很多种。
splice()的主要目的是在数组中间插入元素,但有3种不同的方式使用这个方法。
(确实强大)
(1) 删除。需要给splice()传2个参数:要删除的第一个元素的位置和要删除的元素数量。
可以从数组中删除任意多个元素,比如splice(0,2)会删除前两个元素。
(2) 插入。需要给splice()传3个参数:开始位置、0(要删除的元素数量)和要插入的元素,可以在数组中指定的位置插入元素。
第三个参数之后还可以传第四个、第五个参数,乃至任意多个要插入的元素。
比如,splice(2,0,"red","green")会从数组位置2开始插入字符串"red"和"green"。
(3) 替换。splice()在删除元素的同时可以在指定位置插入新元素,同样要传入3个参数:开始位置、要删除元素的数量和要插人的任意多个元素。
要插入的元素数量不一定跟删除的元素数量一致。比如,s(2,1,"red","green")会在位置2删除一个元素,然后从该位置开始向数组中插入""和"green"。
splice()方法始终返回这样一个数组,它包含从数组中被删除的元素(如果没有删除元素,则返回空数组)
(一个方法,满足三个愿望)
试一试:
let colors = ["red", "blue", "green"]; colors.splice(0,1); console.log(colors); colors.splice(1,0,"black","orange"); console.log(colors); colors.splice(1,1,"pink"); console.log(colors);
4.搜索和位置方法
4.1.搜索方法:
ECMAScript提供了3个严格相等的搜索方法:indexof()、lastIndexof()和includes()。
其中,前两个方法在所有版本中都可用,而第三个方法是ECMAScript7新增的。
这些方法都接收两个参数:要查找的元素和一个可选的起始搜索位置。
indexof()和includes()方法从数组前头(第一项)开始向后搜索,而lastIndexof()从数组末尾(最后一项)开始向前搜索。
indexof()和 lastIndexof()都返回要查找的元素在数组中的位置,如果没找到则返回-1。
includes()返回布尔值,表示是否至少找到一个与指定元素匹配的项。
书里面居然没写,补充一下:
5.迭代方法
6.归并方法
标签:console,log,元素,JS,索引,数组,Array,array From: https://www.cnblogs.com/FatTiger4399/p/16988524.html