数组常用API(1)
数组常用API:
1. push
作用:数组尾部添加;
特点:可以添加一个或多个值; 返回值是数组最新的长度;会改变原数组;
示例:
var arr = [10,20,30,40];
var result = arr.push(100); // 也可以是arr.push(50,60,70...)
console.log(arr); //结果为添加100后的数组 [10,20,30,40,100]
console.log(result); //值为5
2.unshift
作用:数组头部添加;
特点:可以添加一个或多个值; 返回值是数组最新的长度;会改变原数组;
示例:
var arr = [7,8,9,10];
var result = arr.unshift(1); // 也可以是arr.unshift(1,2,3,4...)
console.log(arr); //结果为添加1后的数组 [1,7,8,9,10]
console.log(result); //值为5
3.pop
作用:数组尾部删除;
特点: 返回值是数组最新的长度;会改变原数组;
示例:
var arr = [7,8,9,10];
var result = arr.pop();
console.log(arr); //结果为删除10后的数组 [7,8,9]
console.log(result); //值为3
4.shift
作用:数组头部删除;
特点: 返回值是数组最新的长度;会改变原数组;
示例:
var arr = [7,8,9,10];
var result = arr.shift();
console.log(arr); //结果为删除7后的数组 [8,9,10]
console.log(result); //值为3
5. reverse
作用:反转数组;
特点: 返回值是反转后的数组;会改变原数组;
示例:
var arr = [7,8,9,10];
var newarr = arr.reverse();
console.log(arr); //结果为 [10,9,8,7]
console.log(newarr); //结果为 [10,9,8,7]
6. sort
作用:数组排序,字母表排序;
特点: 返回值是重新排序后的数组;会改变原数组;
示例:
var arr = [7,80,9,10,66];
var arr1=['b','c','a','e']
var newarr = arr.sort(); //括号里不传递参数时是按照字符编码的顺序排序 ,结果为[10,66,7,80,9]
var newarr1 = arr.sort( function(a,b){
return a-b
});
console.log(arr); //结果为 重新排序后的数组
console.log(arr1.sort()); //结果为 ['a','b','c','e']
console.log(newarr1); //当a-b>0,结果为 [7,9,10,66,80];当a-b<0,结果为 [80,66,10,9,7];
7. concat
作用:数组拼接;
特点: 返回值是拼接后新的数组;不会改变原数组;
示例:
var arr = [1,2,3];
var arr1= [7,8,9];
var newarr = arr.concat(arr1);
console.log(newarr); //结果为 [1,2,3,7,8,9]
8. join
作用: 将数组转换为字符串;
特点: 返回值是字符串;不会改变原数组;
示例:
var arr = [1,2,3];
var str = arr.join();
console.log(str); //结果为 1,2,3
join方法如果传递了参数,那么在转换字符串的时候,字符串会以这个参数为分隔符,不传参数默认以逗号分隔;
9. toString
作用: 将数组转换为字符串;(它能将任何数据转换成字符串,不仅仅适用于数组)
特点: 返回值是字符串;不会改变原数组;
示例:
var arr = [1,2,3];
var str = arr.toString
();
console.log(str); //结果为 1,2,3
10. slice()
作用:数组的截取;
特点:(1)当括号里是1个参数时,代表截取开始的位置,包括该下标值,直到数组尾部;
(2) 当括号里是2个参数时,第一个参数代表截取开始的位置,第二个参数代表截取结束的地方,截取时包括第1个下标的值,不包括第2个下标的值;
(3) 传递的参数可为负数,从右往左数(以-1开始),不熟练建议传正数,避免失误;
返回值是截取后的数组;不会改变原数组;
示例:
var arr = [1,2,3,4,5];
var str1 = arr.slice
(2);
var str2 = arr.slice
(1,3);
var str3=arr.slice(-2);
var str4=arr.slice(-5,2);
var str5 =arr.slice(1,-2)
console.log(str1); //结果为 [3,4,5]
console.log(str2); //结果为 [2,3]