版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/erdouzhang/article/details/77395665
下面内容简介:快速清空数组内容、从数组后面添加、从数组前面添加、从数组后面删除、从数组前面删除、数组中的每一位都向后移动一位、数组中的每一位都向前移动一位、数组中某个替换掉、数组连接、数组中元素颠倒位置、字符串颠倒位置;
快速清空数组方法:
方法一:
arr.length = 0;//直接让数组的长度为0来清空数组
alert(arr);//什么都不显示
方法二:
var arr = [];//直接定义一个新数组也是清空数组(推荐这个,效率高)
alert(arr);//什么都不显示
设定数组长度:
var arr = ['aa',2,3];
alert(arr.length);//3
arr.length = 1;//让数组的长度为1,那么就会只保留第一个,后面两个去掉
alert(arr);//aa 只有数组中的第一位
1、数组添加
数组添加分为:后面追加、前面添加
1、数组后面添加push( )方法:
var arr = [1,2,3];
arr.push(4);//在数组后面添加
alert(arr);//1,2,3,4
push( )方法返回值:
var arr1 = ['a','b','c'];
alert(arr1.push('d'));//4 直接返回添加后的数组长度
2、在数组前面添加unshift( )方法:
var arr2 = ['a','b','c'];
arr2.unshift('d');//在数组前面添加d
alert(arr2);//d,a,b,c
unshift( )方法返回值:
var arr3 = ['a','b','c'];
alert(arr3.unshift('d'));//4 直接返回添加后的数组长度 IE6、7不支持unshift返回值
2、数组删除
1、从数组后面删除
var arr4 = ['a','b','c','d'];
arr4.pop();//删除数组中最后一位
alert(arr4);//a,b,c
pop( )方法返回值:
var arr5 = ['a','b','c','d'];
alert(arr5.pop());//d 删除谁就返回谁
2、从数组前面删除:
var arr6 = ['a','b','c','d'];
arr6.shift();//删除数组中第一位
alert(arr6);//b,c,d
shift( )方法返回值:
var arr7 = ['a','b','c','d'];
alert(arr7.shift());//a 删除谁就返回谁
3、数组中每一项向后移动一位
1、数组向后移动
var arr8 = ['a','b','c','d'];
arr8.unshift(arr8.pop());
alert(arr8);//d,a,b,c
两次调用就会移动两下:
var arr8 = ['a','b','c','d'];
arr8.unshift(arr8.pop());
arr8.unshift(arr8.pop());
alert(arr8);//c,d,a,b
解析:pop()
是删除数组最后一位,arr8.pop()
是返回删除的值,unshift()
方法是在数组第一位添加;
2、数组向前移动
var arr9 = ['a','b','c','d'];
arr9.push(arr9.shift());
alert(arr9);//b,c,d,a
4、splice( )方法
splice( )方法功能:删除、替换、添加
1、删除splice(a,b):a是从第几个开始(从0数),b是删除几个
例如1:
var arr10 = ['a','b','c','d'];
arr10.splice(0,1);//从第0位开始,删除1个
alert(arr10);//b,c,d
例如2:
var arr10 = ['a','b','c','d'];
arr10.splice(0,2);//从第0位开始,删除2个
alert(arr10);//c,d
splice( )方法返回值(只有删除时才有返回值):
var arr10 = ['a','b','c','d'];
alert(arr10.splice(0,2));//a,b 返回删除的内容:从第0位开始,删除2个
2、替换
例1:
var arr11 = ['a','b','c','d'];
arr11.splice(0,1,'你好');//替换第0位开始,替换1个,把'a'替换成'你好'
alert(arr11);//'你好',b,c,d
例2:
var arr12 = ['a','b','c','d'];
arr12.splice(0,2,'你好吗');//替换第0位开始,替换2个,把'a','b'替换成'你好吗'
alert(arr12);//'你好吗',c,d
3、添加
var arr13 = ['a','b','c','d'];
arr13.splice(1,0,'你好');//1是在第一位添加(从0数),0是既不删除也不替换,'你好'是添加的内容
alert(arr13);//a,'你好',b,c,d
添加多个:
var arr14 = ['a','b','c','d'];
arr14.splice(1,0,'苹果','香蕉');//1是在第一位添加(从0数),0是既不删除也不替换,'苹果'、'香蕉'是添加的内容
alert(arr14);//a,'苹果','香蕉',b,c,d
5、数组连接
var arr1 = [1,2,3];
var arr2 = [4,5,6];
var arr3 = [7,8,9];
alert(arr1.concat(arr2));//1,2,3,4,5,6
alert(arr1.concat(arr2,arr3));//1,2,3,4,5,6,7,8,9
6、颠倒数组内元素
var arr1 = [1,2,3];
arr1.reverse();
alert(arr1);//3,2,1
7、如何把一个字符串进行颠倒
var str = 'abcdef';
alert(str.split(''));//['a','b','c','d','e','f']把字符串中每一个都分割开来变成数组
alert(str.split('').reverse());//['f','e','d','c','b','a'] 数组中颠倒
alert(str.split('').reverse().join());//'fedcba' 把数组变成字符串
解析:split(”)会把字符串‘abcdef’变成数组[‘a’ ,’b’, ‘c’, ‘d’, ‘e’, ‘f’],然后再使用reverse( )方法进行颠倒,最后使用join( )函数把数组变成字符串;