JavaScript 数组方法(一)

2024-04-03 438 0

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(item1item2, ..., 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(startend)
参数描述
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']

相关文章

JavaScript数组去重
JavaScript 数组方法(三)
JavaScript 数组方法(二)
JS身份证精确校验
前端js实现打包下载文件
前端pdf文件在线预览

发布评论