js · 2019-08-13 0

js数组方法总结

一、concat

concat()方法连接两个或多个数组。

语法:arrayObject.concat(arrayX,arrayX,......,arrayX),参数必须,参数可以是值,也可以是数组(把参数数组的值连接到数组后)。

该方法不会改变现有的数组,而是返回连接后的数组。

var arr = [1,2,3];
// 参数是两个值
// var concatArr = arr.concat(4,5); 
// 参数是一个数组
// var concatArr = arr.concat([6,7,8]);
// 参数是两个数组
var concatArr = arr.concat([4,5],[6,7,8]);
console.log(arr);       //数组:[1,2,3]
console.log(concatArr); //数组:[1,2,3,4,5,6,7,8]

二、join

join()指定使用分割符把数组的所有元素放到一个字符串中。

语法:arrayObject.join(separator),参数可选,如果省略参数,则使用逗号作为分割符。

返回一个字符串。

var arr = ['a','b','c'];
var str = arr.join(';');  
console.log(str);    //字符串:'a;b;c'

三、pop

pop()方法删除并返回最后一个元素。

语法:arrayObject.pop()

返回最后一个元素

var arr = ['a','b','c'];
var str = arr.pop();
console.log(arr);       //数组:['a','b']
console.log(str);       //字符串:c

四、push

push()方法向数组的末尾添加一个或多个元素,并返回新的长度。

语法:arrayObject.push(newelement1,newelement2,....,newelementX),只至少有一个参数

返回新数组长度

var arr = ['a','b','c'];
var len = arr.push('d','e');
console.log(arr);       //['a','b','c','d','e'];
console.log(len);       //5

五、shift

shift()方法用于删除数组中第一个元素,并返回第一个元素

语法:shift()

返回第一个元素

var arr = ['a','b','c'];
var str = arr.shift();
console.log(arr);       //数组:['b','c']
console.log(str);       //字符串:'a'

六、unshift

unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度

语法:arrayObject.unshift(newelement1,newelement2,....,newelementX)

该方法修改现有的数组,返回新数组长度

var arr = ['a','b','c'];
var len = arr.unshift('x','y','z');
console.log(arr);   //数组:["x", "y", "z", "a", "b", "c"]
console.log(len);   //6

七、slice

slice()方法从已有的数组返回选定的元素

语法:arrayObject.slice(start,end)

该方法不会修改现有的数组,而是返回一个新的子数组

var arr = ['a','b','c','d','e'];
var newArr = arr.slice(1,3);
console.log(arr);       //数组:['a','b','c','d','e']
console.log(newArr);    //数组:['b','c']

八、splice

splice()方法向数组添加和删除元素,并返回被删除的元素

语法:arrayObject.splice(index,count,item1,.....,itemX),index必须参数,操作位置;count必须参数,要删除元素的数量,如果是0,表示删除0个;item1,.....,itemX,可选参数,向数组添加元素。

该方法会改变原数组,并把删除的元素组成数组返回。

var arr = ['a','b','c','d','e','f'];
var newArr = arr.splice(2,2,'z');
console.log(arr);       //['a','b','z','e','f']
console.log(newArr);    //['c','d']

九、reverse

reverse()方法用于反转数组内元素的顺序。

语法:arrayObject.reverse()

该方法会改变原来的数组,并返回反转后的数组

var arr = ['a','b','c'];
var reverArr = arr.reverse();
console.log(arr);       //['c','b','a'];
console.log(reverArr);  //['c','b','a'];

十、sort

sort()方法用于对元素进行排序

语法:arrayObject.sort(sortby),可选参数,sortby必须是函数。

该方法会改变原来的数组,并返回改变后的数组。

// var arr = ['d','b','e','a','c'];
// var newArr = arr.sort();
// console.log(arr);        //数组:['a','b','c','d','e']
// console.log(newArr);     //数组:['a','b','c','d','e']

function sortNum(a,b){
    return a-b;
}

var arr = [10,8,5,22];
var newArr = arr.sort(sortNum);
console.log(arr);       //数组:[5,8,10,22]
console.log(newArr);    //数组:[5,8,10,22]

十一、toString

toString() 方法可把数组转换为字符串,并返回结果。

语法:arrayObject.toString()

返回字符串

var arr = ['a','b','c','d','e','f'];
var str = arr.toString();
console.log(arr);   //数组:['a','b','c','d','e','f']
console.log(str);   //字符串:'a,b,c,d,e,f'