push: 尾部添加
语法:
arr.push();
返回值: 添加完数据后数组的长度
会改变元素组
- var arr = [10,20,30,40];
- var newArr = arr.push(50);
- console.log(arr,newArr);
unshift: 头部添加
语法:
arr.unshift();
返回值: 添加完数据后数组的长度
会改变原数组
- var arr = [10,20,30,40];
- var newArr = arr.unshift(50);
- console.log(arr,newArr);
pop: 尾部删除
语法: arr.pop() 删除是不需要传递参数的
返回值: 被删除的数据
会改变原数组
- var arr = [10,20,30,40];
- var newArr = arr.pop();
- console.log(arr,newArr);
shift: 头部删除
语法: arr.shift() 删除是不需要传递参数的
返回值: 被删除的数据
会改变原数组
- var arr = [10,20,30,40];
- var newArr = arr.shift(10);
- console.log(arr,newArr);
reverse: 反转
语法: arr.reverse();
返回值: 反转以后的数组
会改变原数组
- var arr = [10,20,30,40];
- var newArr = arr.reverse();
- console.log(arr,newArr);
sort(): 排序 ---> 面试的时候基本上全部排出
语法:
- arr.sort();
- 1,arr.sort();
- // 如果数组中的数据是 10 以内的都可以这样正常排序
- var arr = [9,4,8,2,7,3];
- var newArr = arr.sort();
- console.log(arr,newArr);
当 sort 里面不传递参数的时候是按照 ASCII 码进行排序的
2,sort 传递参数
- arr.sort(function(a,b){
- return a-b;
- })
- var arr = [9,14,8,21,7,31];
- var newArr = arr.sort(function(a,b){
- return b-a;
- })
- console.log(newArr);
3, 混排
- var arr = [10,20,30,40,50,60,70];
- var newArr = arr.sort(function(){
- return 0.5-Math.random();
- })
- console.log(arr)
- */
concat(): 数组的拼接
数组. concat(数组)
返回值是一个拼接后新的数组
不会改变原数组
- var arr = [10,20,30];
- var arr1 = [40,50,60];
- var newArr = arr.concat(arr1);
- console.log(arr,arr1,newArr);
join: 将数组转换为字符串
- var arr = [10,20,30];
- var str = arr.join("!");
- console.log(arr,str);
返回值是转换后的字符串 可以传递字符
不会改变原数组
split: 将字符串转换为数组
- var str = "又 是 一 场 离 别";
- var arr = str.split(" ");
- console.log(str,arr);
toString(): 将数组转换为字符串
- var arr = [10,20,30,40,50];
- var str = arr.toString();// 查 toString 的用法
- //toString() 函数的返回值为 String 类型. 返回当前对象的字符串形式.
- console.log(arr,str);
slice: 数组截取 删除
start: 截取的起始位置
end: 截取的结束位置 (可选)
- // 左闭右开
- var arr = [10,20,30,40,50];
- var newArr = arr.slice(2,5);
- console.log(arr,newArr);
原数组没有发生改变
splice: 数组截取 可以进行插入 替换 删除
start: 添加或删除的起始的位置 下标
第二个值: 如果是 0 的情况下是添加 非 0 的情况下是删除 删除或添加的个数
第三个值: 需要添加或删除的数据 (可选);
如果第二个参数非 0 的情况是替换, 返回值是替换的数据, 原数组是改变后的数据
会改变原数组
- var arr = [10,20,30,40,50,60,70];
- var newArr = arr.splice(1,0,5);
- console.log(newArr,arr)
来源: http://www.bubuko.com/infodetail-2722774.html