对原数组有影响的方法:
push、pop、unshift、shift、splice、reverse、sort
对原数组没有影响的方法:
join、concat、slice、 valueOf、toString
(1)push
功能:从数组的末尾增加一个或者多个元素
参数:增加的元素 参数就是圆括号中的数据
返回值:返回加入元素后数组的新长度
(2)pop
一般在数组增加的时候 返回的是数组的长度
一般在数组删除的时候 返回的是删除的那个元素
功能:从数组的末尾删除一个
参数:无 如果有 那么也不生效 还是从末尾删除
返回值:返回删除的那一个元素
(3)unshift
功能:从数组的头部增加一个或者多个元素
参数:增加的元素
返回值:返回加入元素后数组的新长度
(4)shift
功能:从数组的头部删除一个
参数:无
返回值:返回删除的那一个元素
(5)splice
传递一个参数的时候是保留几个
传递2个参数的时候 第一个参数代表的是要删除的位置
第二个参数代表的是要删除的个数
传递三个参数 第一个参数代表的是要操作的位置
第二个参数如果是0的话 后面的第三个数据就是添加
第二个参数如果不是0的话 后面的第三个参数就是代表的是替换
第三个参数如果第二个参数是0的话 就代表的是增加的那个元素
第三个参数如果第二个参数不是0的话 就代表的是修改的那个元素
如果传递四个参数以及四个参数以上 那么第三个参数开始
后面的元素都代表的是添加的元素
(6)reverse
功能:翻转数组
参数:无
返回值:返回翻转后的原数组
(7)sort 排序
1.默认是升序
var arr = [6,5,3,1,8,7,2,4];
arr.sort();
2.默认是用的ascii码来升序排序
var arr = ['1','13','0121',9];
arr.sort();
['1', '121', '13', 9]
console.log(arr);
3.降序使用
var arr = [6,5,3,1,8,7,2,4];
默认是升序 如果想使用的是降序的话 需要在
sort方法中传递一个function函数 函数内部有
2个参数 一个是a一个是b
如果return 后面的值的顺序是和传递的顺序一致
那么就是升序 如果不一致就是降序
arr.sort(function(a,b){
return b - a;
});
console.log(arr);
4.自定义排序规则
var arr = ['abc','ef','g','qwer'];
arr.sort(function(a,b){
return b.length - a.length;
})
console.log(arr);
(5)tostring
var arr = ['长头发','短头发','没头发'];
var result = arr.toString();
console.log(arr);
console.log(result);
(6)valueOf
var arr = [1,2,3];
var arr1= arr.valueOf();
console.log(arr);
console.log(arr1);
console.log(arr == arr1);