数组的操作
1 var arr = [ 1,2,77,8,4,5 ];
添加、删除
1 arr.length = 0; //清空数组的方法,让length等于0;
2 arr = []; //从新赋值一个空数组,清空
3 arr.unshift( 0 ); //向数组的第一位添加内容
4 arr.push( 6 ); //向数组最后一位添加内容
5 arr.shift();// 删除数组的第一位,返回被删除值
6 arr.pop(); //删除数组的最后一位,返回被删除值
7 arr.splice( 1 , 2 );// 删除类 ,从第一个起删除2个
8 arr.splice( 0 , 0 , ‘xuanmo’ );//添加,从第0个开始添加
9 arr.splice( 1 , 1 , ‘xuanmo’ ); //替换,替换掉第一个
排序
1 arr.sort();//数组排序,默认以字符串大小编码排序
2 arr.sort(function( a , b ){ return a – b });//标准排序传入比较函数,
3 alert( str.split('').join('-') );//字符串拆分成数组,并未没一个字符后添加一个‘-’
4 arr.concat( arr1 );//拼接数组,把两个或者多个数组拼接在一起
5 arr.reverse();//数组前后调换位置
6 console.log( str.split('').reverse().join('') );//利用reverse()方法将字符串换位置
数组转换成字符串
1 arr.join(''); //把数组变成字符串
随机排序
1 var arr = [0, 1, 2, 3, 4];
2 arr.sort( randomSort );
3 function randomSort(){
4 return Math.random() > 0.5 ? -1 : 1;
5 }
数组去重
1 // ES5方法
2 function deleteArray( arr ){
3 for( var i = 0; i < arr.length; i++ ){
4 for( var j = i+1; j < arr.length; j++ ){
5 if( arr[i] == arr[j] ){
6 arr.splice(j, 1);
7 j--;
8 }
9 }
10 }
11 return arr;
12 }
13
14 // 利用indexOf方法
15 function removeArrayRepeat (arr) {
16 var newArr = [];
17 for(var i = 0, len = arr.length; i < len; i++){
18 if(newArr.indexOf(arr[i]) === -1) newArr.push(arr[i]);
19 }
20 return newArr;
21 }
22
23 // ES6方法
24 Array.from(new Set([1, 2, 3, 2, 5, 8, 1])) // [1, 2, 3, 5, 8]
25
26 // 利用扩展运算符方法
27 [...new Set([1, 2, 3, 2, 5, 8, 1])] // [1, 2, 3, 5, 8]