concat()
连接数组, 返回值是一个添加后的数据, 原数组没改变 var arr = [10,20,30,40]
var arr2 = arr.concat(40,50)
console.log(arr) // [10,20,30,40]
console.log(arr2) // [10,20,30,40,40,50]
var arr = [10,20,30,40]
var arr2 =arr.concat([50,60])
console.log(arr3) // [10,20,30,40,50,60]
join()
将数组所有元素连接成一个字符串并返回这个字符串,不会改变原数组var arr = [10,20,30,40]
var arr2 = arr.join('=')
console.log(arr) // [10,20,30,40]
console.log(arr2) // 10=20=30=40
pop()
删除数组的最后一个元素 返回值就是最后被删除的元素 会改变原数组var arr = [10,20,30,40]
var arr2 = arr.pop()
console.log(arr2) // 40
console.log(arr) // [10,20,30]
reverse()
翻转数组 将数组进行翻转 最后一项变为第一项 倒数第二项变为第二项 以此类推 会改变原数组var arr = [10,20,30,40]
arr.reverse()
console.log(arr) [40,30,20,10]
shift()
删除数组的第一个元素 返回值是被删除的元素 会改变原数组var arr = [10,20,30,40]
var arr2 = arr.shift()
console.log(arr2) 10
console.log(arr) [20,30,40]
slice()
查找数组中选定范围的值 返回值是一个数组 不会改变原来的数组 var arr = [10,20,30,40]
var arr2 = arr.slice(1,2)
console.log(arr2) // [20]
console.log(arr) // [10,20,30,40]
var arr = [10,20,30,40]
var arr2 = arr.slice(0)
console.log(arr2) // [10,20,30,40]
console.log(arr) // [10,20,30,40]
var arr = [10,20,30,40]
var arr2 = arr.slice(-2) // 从倒数第2个字符起一直到结束
var arr3 = arr.slice(0,-3) // 从开始一直到倒数第3个字符的前一个字符
console.log(arr2) // [30,40]
console.log(arr3) // [10,20]
splice()
方法用于添加或删除数组中的元素 会改变原来的数组 splice( index , howmany )
该方法有两个必填参数index
表示从什么位置开始添加或删除数组元素 howmany
表示删除的元素数量,如果为0,则表示不删除数组元素 item1,.....,itemX
添加的参数 可以不写var arr = [10,20,30,40]
var arr2 = arr.splice(0,1)
console.log(arr2); // [10]
console.log(arr); // [20,30,40]
var arr = [10,20,30,40]
var arr2 = arr.splice(2,0,50,60,70)
console.log(arr2) // []
console.log(arr) // [10,20,50,60,70,30,40]
var arr = [10,20,30,40];
var arr2 = arr.splice(0,2,50,60,70);
console.log(arr2); // [10,20]
console.log(arr) // [50,60,70,30,40]
shift()
删除原数组第一项,并返回删除元素的值,如果数组为空则返回undefined 方法会改变原数组var arr = [1,2,3,4]
arr.shift() // [1]
console.log(arr) // [2,3,4]
unshift()
: 将参数添加到原数组开头,并返回数组的长度 , 会改变原数组var arr = [1,2,3,4]
arr.unshift(0) // 5
console.log(arr) // [0,1,2,3,4]
sort()
对数组进行排序,从小到大或从大到小 会改变原数组let arr = [2, 10, 50, 5, 4]
arr.sort((a, b) => {
return a - b // 从小到大
})
console.log(arr) // [2, 4, 5, 10, 50]
arr.sort((a,b)=>{
return b-a // 从大到小
})
console.log(arr) // [50, 10, 5, 4, 2]
indexOf()
有两个参数:1 要查找的项, 2查找的起点索引。其中, 从数组的开头(位置 0)开始向后查找 存在返回位置索引,不存在返回-1var arr = [2, 10, 50, 5, 4]
console.log(arr.indexOf(50)) // 2
console.log(arr.indexOf(60)) // -1
forEach()
对数组进行遍历循环,对数组中的每一项运行给定函数。这个方法没有返回值var arr = [10,20,30,40]
arr.forEach((item,index)=>{
console.log(item,index) // item 为每一项 index 为对应下标
})
map()
对数组每一项一个给定的函数 返回一个新数组var arr = [1, 2, 3, 4, 5];
var arr2 = arr.map(function(item){
return item*item;
});
console.log(arr2) // [1, 4, 9, 16, 25]
undefined
var arr = [1, 2, 3, 4, 5];
var arr2 = arr.map(function(item){
if(item>2) return item
});
console.log(arr2) // [undefined, undefined, 3, 4, 5]
filter()
对数组符合条件的每一项进行过滤, 返回一个新数组 var arr = [10, 20, 30, 40]
var arr2 = arr.filter(item => {
if (item >= 20) {
return item
}
})
console.log(arr2) // [20, 30, 40]
flat()
方法会按照一个可指定的深度递归遍历数组,并将所有元素与遍历到的子数组中的元素合并为一个新数组返回。var arr1 = [1, 2, [3, 4,5,[6,7]];
arr3.flat(Infinity); // [1,2,3,4,5,6,7]
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有