1-1 二维数组
// 二维数组 数组里面套数组 var arr=[[1,2],[3,4]]; console.log(arr[0][1])//2 console.log(arr[1][0])//3
1-2 增
push();unshift();concat();splice(index,0,...value) //从某个下标的前面增加
// 1.可以添加一个值,可以添加多个值 // 2.不能拼接数组 var arr=[1,2,3,4]; // var b=[5,6,7]; arr.push(5); console.log(arr);//1 2 3 4 5
var arr=[1,2,3,4]; arr.unshift(0); console.log(arr);//0,1,2,3,4 var a=[1,2,3]; var b=[4,5,6]; b.unshift(...a);//向前添加数组需要展开 console.log(b);//1,2,3,4,5,
1-3 展开数组
// ...arr 可以将一个数组展开 var arr=[1,2,3]; console.log(arr);//1,2,3 console.log(...arr);// var a=[1,2,3]; var b=[4,5,6]; a.push(...b); console.log(a);//1,2,3,4,5,6
1-5 concat
var arr =[1,2,3]; var c=[5,6,7]; var b=arr.concat(c); //var b=arr.concat(4); 1,2,3,4 console.log(arr);//1,2,3 console.log(b);//1,2,3,5,6,7
1-6 删
pop();shift();splice(index,howmany);
var arr=[1,2,3,4]; arr.pop();//1,2,3 arr.shift();//2,3,4 console.log(arr);
// splice(index howmany) //定点删除 var arr=[1,2,3,4,5]; arr.splice(3,1); console.log(arr);//1,2,3,5
1-8 改
splice(index,howmany,...value)
var arr=[1,2,3,4,5]; // arr[2]=7; 1,2,7,4,5 //splice (index,howmany,...value) arr.splice(2,1,7,8); console.log(arr);//1,2,7,8,4,5
1-9 查(下标 <==>元素)
indexOf();slice(startIndex,endIndex)includes() //判断数组是否包含某个值
var arr=[1,2,3,4]; //slice(startIndex,endIndex)不包括最后一个 console.log(arr.indexOf(4));//3 console.log(arr.slice(1,3));//2,3 console.log(arr.slice(1));//2,3,4
1-10 join
var p=document.getElementById("p"); var arr=[1994,"html","css","js"]; var b=arr.join(); console.log(b);// 1994,html,css,js var 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/犯罪
1-11 升序降序
//升序 // 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")) }
1-12 reduce 求和
1. var arr=[1,2,3,4]; var sum =arr.reduce((a,b)=>{ return a+b; }) console.log(sum);//10 console.log(arr); //1,2,3,4 2. var arr=[1,2,3,4]; var sum=0; for(var i=0;i<arr.length;i++){ sum=sum+arr[i]; } console.log(sum);
1-13 取最大值
var arr=[1,2,3]; console.log(Math.max(45,2,10));//45 console.log(Math.max(...arr));//3
1-14 数组的遍历
var arr=[1,2,3,4]; arr.forEach((item,index)=>{ console.log(item+"--"+index) item+=2; })//1--0 2--1 3--2 4--3
1-15 of
var arr=[1,2,3]; for(var i in arr){ // console.log(i) } var res=arr.map(item=>{ return item*2 }) console.log(arr); console.log(res);2 4 6 例子方法1 var arr=[ {name:"html",value:"12px"}, {name:"css",value:"13px"}, {name:"vue",value:"11px"}, ] // var arr=[ // {name:"html",value:24}, // {name:"css",value:26}, // {name:"vue",value:22}, // ] arr.map(item=>{ var value=parseInt(item["value"])*2; return item["value"]=value; }) console.log(arr);方法2var arr = [ { name: "html", value: "12px" }, { name: "css", value: "13px" }, { name: "vue", value: "11px" }, ] var res=[] for(var key in arr){ arr[key].value=parseInt(arr[key].value)*2; res.push(arr[key]); } console.log(res);
1-16 map
var arr=[1,2,3]; var res=arr.map(item=>{ return item*3; }) console.log(arr); console.log(res); var obj=[{name:"meng",age:21},{age:"zhang",age:13}]; var result=obj.map(item=>{ return item.age=0; }) console.log(result); console.log(obj);