数组的操作方法
2021-02-09 16:19
标签:删除 ber gas 类型 item focus enc variable 索引 para1:待判断的元素 返回值:元素在数组中的索引,如果不存在,返回-1 para1:要追加的元素 返回值是数组的长度; para1:待添加的元素 返回值是数组的长度 场景:下拉刷新 无参数 返回值是删除的元素 返回值是删除的元素 para1:开始索引 para2:删除元素的数目(开始索引是删除的起始位置) para3...:要插入的元素(开始索引也就是插入的位置,可以插入多个) 场景:用新元素替换旧数组的一个元素 返回值是被删除的元素构成的数组; para1:开始位置;包含开始 para2:结束位置;不包含结束 [start,end); 返回值是子数组; para1.....:待拼接的数组(可以拼接多个) 返回值拼接之后的新数组;(arr)原数组不受影响 弱类型语言可以多个参数,强类型的参数是固定的 参数: 元素,索引,所在的数组 para1:操作函数 para1:操作函数 返回值是映射得到的新数组 para1:操作函数 para1:旧值;上一次聚合的结果; para2:当前元素 para3:当前元素的索引 para4:当前元素所在的数组 返回值:该次聚合的结果 para2:聚合时使用的初值(0加,1乘) 返回值是 聚合后的数据 para1:操作函数 para1:元素 para2:索引 para3:元素所在的数组 返回值 true/false ; true:满足条件;false:不满足条件 返回值是 满足过滤条件的新数组 para1:操作函数 返回值排序后的新数组 返回值是true或者false 数组中最大的元素 数组的操作方法 标签:删除 ber gas 类型 item focus enc variable 索引 原文地址:https://www.cnblogs.com/ly1368489670/p/12749623.html例如let arr = [1,4,5,7,9];
1.判断数组中某个元素是否存在 indexOf
let isExist = arr.indexOf(4) !=-1;
2、向数组中追加元素 push
arr.push(100);
3、在数组的开头添加元素 unshift
arr.unshift(-2);
4、删除数组结尾的元素 pop
let e= arr.pop();
console.log(e);//100
5、删除数组开头的元素 shift
arr.shift();
6、从数组中删除一些元素,插入一些元素; splice
console.log(arr)
let de= arr.splice(1,2,1000,200);
//可以删可以加
7、获取一个子数组 slice
let s= arr.slice(1,3);
console.log(s)
8、数组的拼接 concat
console.log(arr);
let arr2=[-1,-2,90]
let c= arr.concat(arr2);
console.log(c);
console.log(arr);
9、数组的遍历 forEach
para1:元素
?
para2:索引
?
para3:元素所在的数组
arr.forEach((item,index,array)=>{
console.log(item)
console.log(index)
console.log(array)
// 想要进行的操作:无明确要求
})
10、数组的映射
para1:元素
?
para2:索引
?
para3:元素所在的数组
?
返回值是该元素映射的新元素(一一对应) let m= arr.map((item,index,array)=>{
return item*3;
})
console.log(m);
let stus = [
{name:‘lucy‘,age:20},
{name:‘lily‘,age:21},
{name:‘小兰‘,age:20},
]
let stuNames = stus.map((item)=>{
return item.name;
})
console.log(stuNames);
?
11、数组的聚合 reduce
let rd=arr.reduce((preValue,curValue,curIndex,array)=>{
console.log(‘1111111111111‘);
// console.log(preValue);
// console.log(curValue);
console.log(curIndex);
// console.log(array);
return preValue+curValue;
},0)
console.log(rd);
// [1,10000,200,7,9]
// 初值:0
// 第一次 0 1 0 1
// 第二次 1 10000 1 10001
// 第三次 10001 200 2 10201
// 第四次 10201 7 3 10208
// 第五次 10208 9 4 10217
// 返回值是 10217
// 计算每个字母出现的频率
let str =‘fsadfasdfagagajkgnahjgasdjfajsfjk‘;
let strArr=str.split(‘‘);
console.log(strArr);
let sr=strArr.reduce((preValue,curValue,curIndex,array)=>{
if(!preValue[curValue]){
preValue[curValue]=0;
}
preValue[curValue] +=1;
console.log(preValue);
return preValue;
},{})
console.log(sr);
12、数组过滤 filter
let fa = arr.filter((item,index,array)=>{
return item%2==0;
})
console.log(fa);
13、数组排序 sort
para1:数组中一个元素
?
para2:数组中另一个元素
?
返回值是true/false;let sortedArr=arr.sort((num1,num2)=>{
return num1>num2;//升序
// return num1
14、判断一个变量是不是数组 isArray
let a=1;
// let a=[1,2];
console.log(Array.isArray(a)); //Array是一个类
console.log(a instanceof Array);//instanceof 关键字
let arrt1=[1,5,6,43,99,42,3];
// 第一种方法。数组中不能有重复元素,推荐第二种
let sor1=arrt1.sort((num,num3)=>{
return num>num3
})
console.log(sor1);
sort=sor1[0];
sort2=sor1[sor1.length-1];
console.log(sort);
console.log(sort2);
// 第二种方法
let num4;
let str1=arrt1.forEach((item)=>{
num4=num4>item ? num4 : item
return num4
})
console.log(num4)