前端中常见的数组操作 indexOf push splice slice concat map、filter 等

来源:互联网 发布:中融信托工作知乎 编辑:程序博客网 时间:2024/06/03 21:41

1、indexOf判断一个数组中某一个元素是否存在,如果不存在返回-1

let isExit = arr.indexOf(4) != -1;

2、push向数组中添加元素

arr.push(100);

3、splice从数组中删除一些元素,插入一些元素

     参数1:删除的开始的索引的位置

     参数2:删除的数量:开始索引是删除的起始位置,也是插入的起始位置

     参数3:加的东西,可以添加很多

     返回值:被删除的元素构成的数组

arr.splice(1,2,5667)
4、slice从数组中切出来一段子数组
参数1:开始的位置
参数2:结束的位置

  返回值:子数组,切出来的子数组

arr.slice(1,3)
5、concat数组的拼接

参数1:待拼接的数组

返回值:拼接之后的新数组

  是把arr和arr1拼接成了一个新数组,并不是把arr2加到arr中,arr并没有受到影响

let arr = [1,12,3,45,5,10];
let arr1=[-1,4,-3];
arr.concat(arr1);
6.1、数组的映射

新数组变成旧数组的3倍

返回值:映射得到的新数组

必需要有返回值

例子一
let arr = [1,12,3,45,5,10];
let m = arr.map((item,index,array)=>{    return item*3;})
例子二
let stus = [    {name:'lucy',age:20},    {name:'licy',age:44},    {name:'rdry',age:67}]let stuname = stus.map((item)=>{    return item.name;})console.log(stuname);
6.2、forEach数组的遍历

参数1:数组的每一个元素
参数2:数组的元素的索引

参数3:就是所在的数组是谁,即arr===array

arr.forEach((item,index,array)=>{    // 想要进行的操作,无明确的要求})

7、 filter数组过滤filter

参数1:元素

参数2:索引

参数3:元素所在的数组

返回值是满足条件的新数组

let arr = [     {name:'参一',age:'12'},     {name:'参二',age:'19'},];
let fa = arr.filter((item,index,array)=>{    return item.name;})console.log(fa);

8、sort返回排序后的数组

let goods = [    {name:'裙子',price:34,sales:10000},    {name:'裙子',price:634,sales:100},    {name:'裙子',price:304,sales:10},    {name:'裙子',price:300,sales:999},    {name:'裙子',price:255,sales:880}]let srwa = goods.sort((obj1,obj2)=>{    return obj1.price < obj2.price;});console.log(srwa);
9、unshift在数组的开头添加元素

参数:待添加的元素
返回值是数组的长度

let arr = [1,12,3,45,5,10];arr.unshift(-2);

10、push向数组结尾中添加元素

 arr.push(100);
11、shift删除数组开头的元素

 返回值是:删除的元素

arr.shift();
12、pop删除数组结尾的元素
无参数
返回值:删除的元素
arr.pop();
 
阅读全文
1 0
原创粉丝点击