数组的常用方法,是否改变原数组,返回值是什么

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

 改变原数组:是,返回值:新的数组长度。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.push(8)
console.log(result); // 8
console.log(arr); // [1, 2, 3, 4, 5, 6, 7, 8]

2.pop() 删除并返回数组的最后一个元素。

改变原数组:是,  返回值:被删除的元素。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.pop()
console.log(result); // 7
console.log(arr);  // [1, 2, 3, 4, 5, 6]

3.shift()  删除并返回数组的最后一个元素。

改变原数组:是,返回值:被删除的元素。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.shift()
console.log(result); // 1
console.log(arr);  // [ 2, 3, 4, 5, 6, 7 ]

4.unshift()  在数组的开头添加一个或多个元素,并返回新的长度。

改变原数组:是, 返回值:新的数组的长度。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.unshift(0)
console.log(result); // 8
console.log(arr); // [ 0, 1, 2, 3, 4, 5, 6, 7 ]

5.splice()  从数组中添加/删除项目,然后返回被删除的项目。

改变原数组:是,返回值:包含被删除项目的数组。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.splice(2, 1)
console.log(result); //[ 3 ]
console.log(arr); //[ 1, 2, 4, 5, 6, 7 ]

let arr1 = [1, 2, 3, 4]
let result1 = arr1.splice(2, 0, 8, 9)
console.log(result1); //[]
console.log(arr1); //[ 1, 2, 8, 9, 3, 4 ]

6.reverse()  颠倒数组中元素的顺序,并返回逆序后的数组。

改变原数组:是, 返回值:逆序后的数组。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.reverse()
console.log(result); //[ 7, 6, 5, 4, 3, 2, 1 ]
console.log(arr); //[ 7, 6, 5, 4, 3, 2, 1 ]

7.sort()  对数组元素进行排序,并返回排序后的数组。

改变原数组:是, 返回值:排序后的数组。

let arr = [1, 5, 3, 2, 4, 7, 6]
let result = arr.sort()
console.log(result); //[ 1, 2, 3, 4, 5, 6, 7 ]
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

8.concat() 合并两个或多个数组,并返回合并后的数组。

改变原数组:否,返回值:合并后的数组。

let arr = [1, 2, 3]
let arr1 = [4, 5, 6]
let result = arr.concat(arr1)
console.log(result); //[ 1, 2, 3, 4, 5, 6 ]
console.log(arr);   //[ 1, 2, 3 ]
console.log(arr1); //[ 4, 5, 6 ]

9.slice(start, end)  从已有的数组中返回选定的元素。从索引 start 到 end(但不包括 end 本身)的元素。

改变原数组:否,返回值:选定的元素组成的新数组。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.slice(2, 5)
// let result = arr.slice(2) //[ 3, 4, 5, 6, 7 ] 第二个参数省略,则一直查找到末尾
// let result = arr.slice(0) //[ 1, 2, 3, 4, 5, 6, 7 ] //输入原数组内容
// let result = arr.slice(-3) //[ 5, 6, 7 ]
// let result = arr.slice(-3, -1) //[ 5, 6 ]  从最后一项开始 -3 表示从数组末尾开始,第三个元素,即 5。 -1 表示从数组末尾开始,第一个元素,即 7。
console.log(result); //[ 3, 4, 5 ]
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

10.filter()  创建一个新数组,其包含通过所提供函数实现的测试的所有元素,过滤。

改变原数组:否,返回值:满足条件的元素组成的新数组, 没有满足条件的元素则返回空数组。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.filter(item => item > 3)
console.log(result); //[ 4, 5, 6, 7 ]
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]]

11.map() 通过指定函数处理数组的每个元素,并返回处理后的数组。

 改变原数组:否,返回值:处理后的新数组。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.map(item => item * 2)
console.log(result); //[ 2, 4, 6, 8, 10, 12, 14 ]
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

12.reduce()  对数组的每个元素执行一个由您提供的reducer函数(升序执行),将其结果汇总为单个返回值。

改变原数组:否,返回值:汇总后的值。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.reduce((pre, cur) => pre + cur, 0)
console.log(result); //28
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

13.forEach() 遍历数组,   改变原数组:否, 返回值:undefined。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.forEach(item => item)
console.log(result); //undefined
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

14.every()  检测数组所有元素是否都符合指定条件, 改变原数组:否, 返回值:true/false

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.every(item => item > 3)
console.log(result); //false
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

15.some()  检测数组某个元素是否符合指定条件, 改变原数组:否, 返回值:true/false

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.some(item => item > 3)
console.log(result); //true
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

16.find() 返回数组中满足提供的测试函数的第一个元素的值, 改变原数组:否, 返回值:找到的元素,没有找到则返回undefined

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.find(item => item > 3)
console.log(result); //4
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

17.findIndex() 返回数组中满足提供的测试函数的第一个元素的索引,改变原数组:否, 返回值:找到的元素索引,没有找到则返回-1。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.findIndex(item => item == 4)
console.log(result); //3
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

18.join()  将数组中的所有元素放入一个字符串,元素通过指定的分隔符进行分隔。默认连接字符为 “,” 逗号, 改变原数组:否, 返回值:连接后的字符串。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.join('-')
console.log(result); //1-2-3-4-5-6-7
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

19.includes()  判断数组中是否包含某个元素, 改变原数组:否, 返回值:true/false。

let arr = [1, 2, 3, 4, 5, 6, 7]
let result = arr.includes(4)
console.log(result); //true
console.log(arr); //[ 1, 2, 3, 4, 5, 6, 7 ]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值