1. concat() 方法
concat() 方法用于连接两个或多个数组,并返回结果数组;改方法不会改变现有数组,而是返回一个新的数组。
语法
array1.concat(array2, array3,..., arrayX)
合并两个数组:
let arr1 = ['Google', 'Baidu'];
let arr2 = ['Taobao', 'Bing'];
let arr3 = arr1.concat(arr2);
console.log(arr3);
// 结果:['Google', 'Baidu', 'Taobao', 'Bing']
合并多个数组:
let arr1 = ['Google', 'Baidu'];
let arr2 = ['Taobao', 'Bing'];
let arr3 = ['Jindong', 'Wangyi'];
let arr4 = arr1.concat(arr2,arr3);
console.log(arr4);
// 结果:['Google', 'Baidu', 'Taobao', 'Bing', 'Jindong', 'Wangyi']
2. push() 方法
push() 方法可向数组的末尾添加一个或多个元素,并返回新的数组长度。此方法会改变数组的长度。
语法
array.push(item1, item2, ..., itemX)
添加一个元素:
let arr1 = ['Google', 'Baidu'];
arr1.push('Taobao');
console.log(arr1)
// 结果:['Google', 'Baidu', 'Taobao']
添加多个元素:
let arr1 = ['Google', 'Baidu'];
arr1.push('Bing','Wangyi');
console.log(arr1)
// 结果:['Google', 'Baidu', 'Bing', 'Wangyi']
// console.log(arr1.push('Bing','Wangyi'));
// 结果: 4
3. unshift() 方法
unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。该方法将改变数组的长度。
语法
array.unshift(item1,item2, ..., itemX)
添加多个元素:
let arr1 = ['Google', 'Baidu'];
arr1.unshift('Bing','Wangyi')
console.log(arr1)
// 结果:['Bing', 'Wangyi', 'Google', 'Baidu']
4. pop() 方法
pop() 方法用于删除数组的最后一个元素,并返回删除的元素。此方法改变数组的长度
语法
array.pop()
例如:
let arr1 = ['Google', 'Baidu', 'Jindong', 'Wangyi'];
arr1.pop();
console.log(arr1)
// 结果:['Google', 'Baidu', 'Jindong']
// console.log(arr1.pop())
// 结果:Wangyi
5. shift() 方法
shift() 方法用于删除数组的第一个元素,并返回删除的元素。此方法改变数组的长度。
语法
array.shift()
例如:
let arr1 = ['Google', 'Baidu', 'Jindong', 'Wangyi'];
let del = arr1.shift();
console.log(arr1)
// 结果: ['Baidu', 'Jindong', 'Wangyi']
console.log(del)
// 结果:Google
6. slice() 方法
slice() 方法可从已有的数组中返回选定的元素。不会改变原始数组。
语法
array.slice(start, end)
参数 | 描述 |
start | 可选。规定从何处开始选取。如果该参数为负数,则表示从原数组中的倒数第几个元素开始提取,slice(-2) 表示提取原数组中的倒数第二个元素到最后一个元素(包含最后一个元素)。 |
end | 可选。规定从何处结束选取。该参数是数组片断结束处的数组下标。如果没有指定该参数,那么切分的数组包含从 start 到数组结束的所有元素。如果该参数为负数, 则它表示在原数组中的倒数第几个元素结束抽取。 slice(-2,-1) 表示抽取了原数组中的倒数第二个元素到最后一个元素(不包含最后一个元素,也就是只有倒数第二个元素)。 |
返回值:返回一个新的数组,包含从 start(包括该元素) 到 end (不包括该元素)的数组对象中的元素。
例如:
let arr1 = ['Google', 'Baidu', 'Jindong', 'Wangyi','Taobao'];
console.log(arr1.slice(1))
// 结果:['Baidu', 'Jindong', 'Wangyi', 'Taobao']
console.log(arr1.slice(0,2));
// 结果:['Google', 'Baidu']
console.log(arr1.slice(-2))
// 结果:['Wangyi', 'Taobao']
console.log(arr1.slice(-2,-1))
// 结果:['Wangyi']
7. splice() 方法
splice() 方法用于添加或删除数组中的元素。会改变原始数组。
语法
array.splice(index,howmany,item1,.....,itemX)
参数 | 描述 |
index | 必需。规定从何处添加/删除元素。 该参数是开始插入和(或)删除的数组元素的下标,必须是数字。 |
howmany | 可选。规定应该删除多少元素。必须是数字,但可以是 "0"。 如果未规定此参数,则删除从 index 开始到原数组结尾的所有元素。 |
item1, ..., itemX | 可选。要添加到数组的新元素 |
返回值:如果是删除元素,则返回删除元素的数组。 如果未删除任何元素,则返回空数组。
例如:
let arr1 = ['Google', 'Baidu', 'Jindong', 'Wangyi','Taobao'];
//删除第二个元素及之后的所有元素
console.log(arr1.splice(1))
// 结果:['Baidu', 'Jindong', 'Wangyi', 'Taobao']
console.log(arr1)
// 结果:['Google']
//不删除元素
console.log(arr1.splice(1,0))
// 结果:[]
console.log(arr1)
// 结果:['Google', 'Baidu', 'Jindong', 'Wangyi', 'Taobao']
//从数组第二项开始,删除两个元素
console.log(arr1.splice(1,2))
// 结果:['Baidu', 'Jindong']
console.log(arr1)
// 结果:['Google', 'Wangyi', 'Taobao']
//移除数组的第二个元素,并在数组第二个位置添加新元素
console.log(arr1.splice(1,1,'firfox'))
// 结果:['Baidu']
console.log(arr1)
// 结果:['Google', 'firfox', 'Jindong', 'Wangyi', 'Taobao']
//从数组的第二个元素开始,删除两个元素,并在数组第二个位置添加新元素
console.log(arr1.splice(1,2,'firfox'))
// 结果:['Baidu', 'Jindong']
console.log(arr1)
// 结果:['Google', 'firfox', 'Wangyi', 'Taobao']
//从数组的第二个元素开始,删除两个元素,并在数组第二个位置添加两个新元素
console.log(arr1.splice(1,2,'firfox','Opera'))
// 结果:['Baidu', 'Jindong']
console.log(arr1)
// 结果:['Google', 'firfox', 'Opera', 'Wangyi', 'Taobao']
8. reverse() 方法
reverse() 方法用于颠倒数组中元素的顺序。会改变原数组。
语法
array.reverse()
返回值:颠倒顺序后的数组
例如:
let arr1 = ['Google', 'Baidu', 'Jindong', 'Wangyi','Taobao'];
console.log(arr1.reverse())
console.log(arr1)
// 结果:['Taobao', 'Wangyi', 'Jindong', 'Baidu', 'Google']
9. join() 方法
join() 方法用于把数组中的所有元素转换为一个字符串。不改变原数组。
语法
array.join(separator)
参数 | 描述 |
separator | 可选。指定要使用的分隔符。如果省略该参数,则使用逗号作为分隔符。 |
返回值:返回一个字符串。该字符串是通过把数组中的每个元素转换为字符串,然后把这些字符串通过separator 字符串连接起来生成的。
例如:
let arr1 = ['Google', 'Baidu', 'Jindong', 'Wangyi','Taobao'];
console.log(arr1.join(','))
// 结果: Google,Baidu,Jindong,Wangyi,Taobao
console.log(arr1.join(' and '))
// 结果: Google and Baidu and Jindong and Wangyi and Taobao
console.log(arr1)
// 结果: ['Google', 'Baidu', 'Jindong', 'Wangyi', 'Taobao']
10. toString() 方法
toString() 方法可把数组转换为字符串,并返回结果。数组中的元素之间用逗号分隔。不改变原数组。
语法
array.toString()
例如:
let arr1 = ['Google', 'Baidu', 'Jindong', 'Wangyi','Taobao'];
console.log(arr1.toString())
// 结果: Google,Baidu,Jindong,Wangyi,Taobao
console.log(arr1)
// 结果: ['Google', 'Baidu', 'Jindong', 'Wangyi', 'Taobao']