1 增
push();unshift();concat();splice(index,0,...value) //从某个下标的前面增加
1-1 push 从后添加
// 1.可以添加一个值,可以添加多个值// 2.不能拼接数组var arr=[1,2,3,4];// var b=[5,6,7];arr.push(5);console.log(arr);//1 2 3 4 5
1-2 unshift 从前添加
var arr=[1,2,3,4];arr.unshift(0);console.log(arr);//0,1,2,3,4var a=[1,2,3];var b=[4,5,6];b.unshift(...a);//向前添加数组需要展开console.log(b);//1,2,3,4,5,
// ...arr 可以将一个数组展开var arr=[1,2,3];console.log(arr);//1,2,3console.log(...arr);//var a=[1,2,3];var b=[4,5,6];a.push(...b);console.log(a);//1,2,3,4,5,6
2 删
pop();shift();splice(index,howmany);
2-1 pop从后删除
var arr=[1,2,3,4];arr.pop();//1,2,3console.log(arr);
2-2 shift 从前删除
var arr=[1,2,3,4];arr.shift();//2,3,4console.log(arr);
2-3 splice(startIndex,长度) 定点删除
var arr = [1,2,3,4,5]arr.splice(3,1)console.log(arr); // [1,2,3,5]
3 改
3-1 splice(startIndex,长度,元素…) 修改 先删除后插入
splice(startindex,howmany,...value)
var arr=[1,2,3,4,5];// arr[2]=7; 1,2,7,4,5//splice (startindex,howmany,...value)arr.splice(2,1,7,8);console.log(arr);//1,2,7,8,4,5
4 查
4-1 arr[index] 查询对应下标的值
//arr[index] 查询对应下标的值var arr=[1,2,3];console.log(arr[0]); //1;
4-2 indexOf(value) 查询对应值的下标
var arr=[1,2,3,4];console.log(arr.indexOf(1)); // 0//如果没有对应的值,则返回-1
4-3 slice(start,end) 截取 (包含开始,不含结束)
// slice(startIndex,endIndex) 截取 包含开始不含结束// slice(startIndex) 截取从startIndex开始到后面的所有值var arr = [1,2,3,4]console.log(arr.slice(1,3)); // [2,3]console.log(arr.slice(1)); // [2,3,4]
4-4 includes(value) 判断数组是否包含某个值
// 返回booleanvar arr = [1,2,3,4]console.log(arr.includes(5)); // false
jie
indexOf();slice(startIndex,endIndex)includes() //判断数组是否包含某个值
var arr=[1,2,3,4];//slice(startIndex,endIndex)不包括最后一个console.log(arr.indexOf(4));//3console.log(arr.slice(1,3));//2,3console.log(arr.slice(1));//2,3,4
5 join
var p=document.getElementById("p");var arr=[1994,"html","css","js"];var b=arr.join();console.log(b);// 1994,html,css,jsvar str=arr.join("/");p.innerHTML=str;console.log(str); // 1994/html/css/js例子var data={country:"美国",year:"1994",story:"犯罪"}var arr=[]for(var i in data){arr.push(data[i])}var str=arr.join("/");console.log(str); //美国/1994/犯罪
6 sort 升序降序
//升序// arr.sort((a,b)=>{// return a-b;// })var arr=[4,1,6,12,7,9];var res=arr.sort((a,b)=>{return b-a;})console.log(res); //[12, 9, 7, 6, 4, 1]例子(年龄排序)var students=[{name:"zhang",age:19},{name:"meng",age:21},{name:"li",age:8},{name:"liu",age:14},]var result=students.sort((a,b)=>{return a["age"]-b["age"]})console.log(result)例子(外卖)<button id="like">like</button><button id="price">price </button><button id="distance">distance</button><script>var like=document.getElementById("like");var sales=[{name:"zs",like:56,distance:90,price:75},{name:"ls",like:89,distance:56,price:45},{name:"ww",like:76,distance:50,price:65},]function addOrder(arr,value){if(Array.isArray(arr)){var res =arr.sort((a,b)=>{return a[value]-b[value];})return res;}else{return null;}}like.onclick=function(){console.log(addOrder(sales,"like"))}price.onclick=function(){console.log(addOrder(sales,"price"))}distance.onclick=function(){console.log(addOrder(sales,"distance"))}
7 reduce 求和
1. var arr=[1,2,3,4];var sum =arr.reduce((a,b)=>{return a+b;})console.log(sum);//10console.log(arr); //1,2,3,42. var arr=[1,2,3,4];var sum=0;for(var i=0;i<arr.length;i++){sum=sum+arr[i];}console.log(sum);
8 取最大值
var arr=[1,2,3];console.log(Math.max(45,2,10));//45console.log(Math.max(...arr));//3for(var i=1;i<arr.length;i++){if(maxNum<arr[i]){maxNum=arr[i]}}
9 reverse 数组的反转
var arr=["html","css","js"];console.log(arr.reverse());
10.数组去重
var arr=[1,2,3,2,4,8,6,4];// arr=[1,2,3,4,6,8]var res=[];arr.forEach(item=>{if(!res.includes(item)){res.push(item);}})console.log(res)
set方法
var arr=[1,2,3,2,4,8,6,4];var s=new Set(arr);console.log([...s])
将一个对象数组中的某个键添加到另一个数组中(按下标来) 根据某个定值来判断从那里截取(添加)
let flag = data.activities.length;data.activities.forEach((item, index) => {if (item.content == e.orderStateName) { //content定值flag = index;item.timestamp = res.data[index].flowLogTIme; //定值项添加键值}if (index < flag) {item.timestamp = res.data[index].flowLogTIme); //小于定值的下标的添加}});
