js数组
js数组操作
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <div class="box"> </div> <div id="box"></div> <script type="text/javascript"> let arr=[1,2,3,4]; let arr2=new Array();//--arr2=[] arr2=[5,6,7,8]; let arr3=new Array(5);//length为5 //unshift(数组的最前面添加) arr.unshift('我是前辈'); console.log('unshift:'+arr); //push(数组的最后面添加) arr.push('我是后辈') console.log('push:'+arr); //shift(数组的最前面删除) arr.shift(); console.log('shift:'+arr); //pop(数组的最后面删除) arr.pop(); console.log('pop:'+arr); //spclice(数组指定位置添加和删除、修改) arr3.splice(0,0,'我是第一个');//添加 arr3.splice(1,0,'我是第二个');//添加 console.log('添加:'+arr3); arr3.splice(0,1);//删除第一个数组元素 console.log('删除:'+arr3); arr3.splice(0,1,'我是被迫修改的');//此时第二个的下标已经变成0了 console.log('修改:'+arr3); //slice(数组的截取) let newArr=arr.slice(0);//截取所有 console.log('截取:'+newArr); //join(数组元素的拼接) let newArr2=arr.join('---');//用---拼接 console.log('元素拼接:'+newArr2); //concat(数组之间的拼接) let newArr3=arr.concat(arr2,arr3);//拼接arr和arr2和arr3数组 console.log('数组拼接:'+newArr3); </script> </body> </html>
数组:添加-->前unshift 后push
删除-->前shift 后pop
指定-->splice
截取-->slice
拼接-->concat join
排序-->sort
反转-->reverse
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> </head> <body> <script type="text/javascript"> let arr=[9,4,2,3,8,5] // alert(arr.sort());//2,3,4,5,8,9 let arr2=[5,43,3,2,100,8,6,200]; // alert(arr2.sort()) //数组排序,字符串比较,注意是toString(),为了解决这种问题,sort允许接收一个比较函数 //升序 let rise=function(a,b){ return a-b; //因为sort的本质是升序,a-b==-1 a在b的前面 } // alert(arr2.sort(rise)); //降序 let drop=function(a,b){ return b-a; //因为sort的本质是升序,b-a==1 a在b的后面 } // alert(arr2.sort(drop)); // 还可以这样写 //升序 function riseOf(value1,value2){ if(value1>value2){ return 1; }else if(value1==value2){ return 0; }else if(value1<value2){ return -1; } } //alert(arr2.sort(riseOf)); //降序 function dropOf(value1,value2){ if(value1>value2){ return -1; }else if(value1==value2){ return 0; }else if(value1<value2){ return 1; } } alert(arr2.sort(dropOf)); //说明-1表示第一个值位于第二个值的前面 //1表示第一个值位于第二个值的后面 //0表示相等,位于第一个值的后面 </script> </body> </html>
reverse(可以先排序,再反转就可以得到了升序或者降序)
let arr=[1,5,6,43,3];
arr.reverse();
alert(arr);
越难办到的事越有价值