数组方法的一些总结

数组方法总结

Push方法:

添加一个新元素到数组尾部,并返回修改后数组的长度;

let arr1=[1,2,3,4,5,6,7,8,9]
this.arr1.push("A")
console.log(this.arr1) //1,2,3,4,5,6,7,8,9,A

 

Pop方法:

从数组最后方删除一个元素,并返回移除的项;

let arr1=[1,2,3,4,5,6,7,8,9]
this.arr1.pop()
console.log(this.arr1) //1,2,3,4,5,6,7,8

 

shift方法:

移除数组的第一个元素,并返回该项;

let arr1=[1,2,3,4,5,6,7,8,9]
this.arr1.shift()
console.log(this.arr1) //2,3,4,5,6,7,8,9

 

unshift方法:

数组前端添加一个新元素,并返回修改后的数组长度;

let arr1=[1,2,3,4,5,6,7,8,9]
this.arr1.unshift("A")
console.log(this.arr1) //A,1,2,3,4,5,6,7,8,9

 

splice方法:

删除数组中指定index的指定个元素

splice拥有三个参数

splice('从第几个开始删除','删除多少个','删除后的位置插入的元素') 

实例 从第5个元素开始删除两个元素并插入元素A

let arr1=[1,2,3,4,5,6,7,8,9]
this.arr1.splice(4,2,"A")
console.log(this.arr1) //1,2,3 4,A,7,8,9

 

join方法:

仅接受一个参数,数组转化成字符串 并以 ( ) 内的参数进行分割

let arr1=["A1","B2","C3"];
this.arr1.join(",")     // "A1","B2","C3"

 

concat方法:

在concat的( )中传入参数,使原数组在尾部新增元素, 多用于数组的合并

let arr1=["A1","B2","C3"];
this.arr1.concat("D4")    //["A1","B2","C3","D4"];
let arr2=["E5","H6"]
this.arr1.concat(arr2)//["A1","B2","C3","D4","E5","H6"]

 

slice方法:

从原数组中按照下标提取出新的数组

  • slice拥有两个参数 ( "开始的下标" ,"结束的下标")

  • 当slice("单个参数")是,即为从此下标开始到数组结束进行copy

  • 当slice(0)即为复制原数组

let arr1=["A1","B2","C3","D4","E5","H6"]
this.arr1.slice(1,3)    //["B2","C3","D4"];
this.arr1.slice(4)      //["E5","H6"]
this.arr1.slice(0)      //["A1","B2","C3","D4","E5","H6"]

 

every方法:

数组的每一项都进入条件函数中,当一项的运算结果都为true时,则整个返回true

var arr1=["1","2","3","4","5","6"]
var arr2=arr1.every(function(item,index,array){
return item>3
});
console.log(arr2)// false ,因为1,2,3均返回false

 

some方法:

数组的每一项都进入条件函数中,当一项的运算结果都为true时,则整个返回true

var arr1=["1","2","3","4","5","6"]
var arr2=arr1.some(function(item,index,array){
return item>5
});
console.log(arr2)// true ,因为6大于5 则返回true

 

filter方法:

数组的每一项都进入条件函数中,返回判定为true的元素,组成新的数组

var arr1=[1,2,3,2,5];
var arr2=arr1.filter(function(item,index,array){
return item>=3
});
console.log(arr2)//   [3,5] 过滤掉了小于3的元素

 

map方法:

数组的每一项都进入条件函数中,返回的是每一项运行函数后的值,所新组成的数组,下标具有一一对应的关系

//数组中每一项都 ×5
var arr1=[3,6,9];
var arr2=arr1.map(function(item,index,array){
return item*5
});
console.log(arr2)// [15,30,45]

 

find方法:

方法返回数组中第一个通过测试的元素的值

var arr1 = [3, 6, 9,12];
var arr2=arr1.find(function(item,index,array) {
 return item >= 10;
})
console.log(arr2)  // [12]

 

findIndex方法:

方法返回数组中通过测试的第一个元素的索引

var arr1 = [3, 6, 9,12];
var eq=arr1.findIndex(function(item,index,array) {
 return item >= 10;
})
console.log(eq)  // 3

 

forEach方法:

方法对数组的每个元素执行一次给定的函数

var arr1  = [1, 2, 3, 5, 6, 7, 8]
var fun1 = (element) => console.log(element)
arr1.forEach(fun1)    
// 遍历输出array的每一个元素

 

includes 方法:

用来判断一个数组是否包含一个指定的值,根据情况,如果包含则返回 true,否则返回 false。

var arr1 = [1, 2, 3, 5, 6, 7, 8]
console.log(arr1.includes(2));     //true
console.log(arr1.includes(9));     //false

 

reduce方法:

用以计算遍历出的值的运算,函数中包含两个值

  • pre代表 接收上一次遍历时的返回值

  • current表示当前正在遍历的这个元素

        var arr=[
          {name:"Vue入门",price:99,count:3},
          {name:"Vue底层",price:89,count:1},
          {name:"Vue从入门到放弃",price:79,count:5}
      ]
       let total=arr.reduce((pre,current)=>{
           //上次的计算值+当前项单价X当前项数量
           return pre+ current.price*current.count
      },0)
      //0即为第一次遍历pre时的初始值
       console.log(total);     //781
 
posted @ 2022-10-24 22:44  Dollom  阅读(17)  评论(0)    收藏  举报