Array
1.创建数组
let arr = new Arrray()
let arr2 = []
from()用于将类数组结构转换为数组实例
2.检测数组
instanceof()
if(value instanceof Array){
// 操作数组
}
Array.isArray()
if(Array.isArray(value)){
// 操作数组
}
3.迭代器
在es6中,Array的原型上暴露用于检索数组内容的方法:key()、values()、和entries()。
key()返回数组索引的迭代器,values()返回数组元素的迭代器,而entries()返回索引/值对的迭代器
const a = ['foo','bar ','baz','qux']
const aKeys = Arrar.from(a.keys())
const aValues =Arrar.from(a.values())
const aEntries =Arrar.from(a.entries())
console.log(aKeys) // [0,1,2,3]
console.log(aValues ) //['foo','bar','baz','qux']
console.log(aEntries ) // [[0,'foo'],[1,'bar'],[2,'baz'],[3,'qux'],]
4.转换方法 toString()
let colors= ['red','blue ','green']
alert(colors.toString()) // red,blue,green
5.栈方法 push()、pop()
- push() 方法接收任意数量得参数,并将它们添加到数组得末尾,返回数组得最新长度
let colors = []
colors .push('black')
- pop() 方法用于删除数组得最后的一项,同时减少数组得长度,返回被删除的项
let colors = []
let item = colors .pop()
console.log(item) // 'black'
6.队列方法 shift()、unshift()
- shift()方法会删除数组得第一项并返回它,然后长度减1
let colors = []
let count = colors.push('red','green')
let item = count.shift()
console.log(item) // red
- unshift()方法在数组开头添加新数据,在数组末尾取得数据
let colors = []
let item = colors .unshift('red','green')
console.log(item) //['red','green']
7.排序方法 reverse()、sort()
反向排序
8.操作方法 slice()、splice()
- slice()用于创建一个包含原数组中一个或多个元素的新数组
接收一个或两个参数返回元素的开始索引和结束索引
1.如果只有一个参数,则返回该索引到数组末尾的所有元素
2.如果有两个参数。则返回从开始索引到结束索引对应的所有元素,其中不包括结束索引对应的元素(不改变原数组)
3.如果slice()的参数有负值,那么就以数值长度加上这个负值的结果确定位置。比如,在包含5个元素的数组上调用slice(-2,-1),就相当于调用slice(3,4)。如果结束位置小于开始的位置,则返回空数组
let colors =['red','green','blue','yellow','pink']
let colors2 = colors.slice(1) //green,blue,yellow,pink
let colors3 = colors.slice(1,4) //green,blue,yellow
- splice()主要在数组中间插入元素,有3种不同的方式使用这个方法
删除 需要給splice()传2个参数:要删除的第一个元素的位置
和要删除的元素的数量
。可以从数组中删除任意多个元素,比如splice(0,2)会删除前两个元素
插入 需要給splice()传3个参数:开始位置
、0(要删除的元素的数量)
、要插入的元素
替换 需要給splice()传3个参数:开始位置
、要删除的元素的数量
、要插入的任意元素
要插入的元素数量不一定要跟删除的元素数量一致
splice()始终返回一个数组,它包含从数组中被删除的元素(如果没有删除元素,则返回空数组)
9.搜索和位置的方法 indexOf()、lastIndexOf()、includes()、find()、findIndex()
-
严格相等
indexOf() 返回要查找的元素在数组中的位置
没有找到返回-1
lastIndexOf() 返回要查找的元素在数组中的位置
没有找到返回-1
includes()返回布尔值
-
断言函数
find()返回第一个匹配的元素
findIndex()返回第一个匹配的索引
找到匹配项后,这两个方法都不再继续搜索
迭代方法 every()、filter()、forEach()、map()、some()
这些方法都不改变调用它们的数组
- every():都为true则返true
-filter():函数返回true的项会组成数组之后返回
-map():返回由每次函数调用的结果构成的数组
-some():如果有一项函数返回true,则这个方法返回true
10.归并方法 reduce()
reduce()主要用于求和
网友评论