前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ES6常用数组方法总结(max,contant,some,every,filter,reduce,forEach,map)

ES6常用数组方法总结(max,contant,some,every,filter,reduce,forEach,map)

作者头像
五月
发布2022-11-15 16:39:07
7780
发布2022-11-15 16:39:07
举报
文章被收录于专栏:web前端随笔web前端随笔

1.求最大值(Math.max)

代码语言:javascript
复制
//数组求最大值
Math.max(...[23,43,5,98,1])

//数字求最大值
Math.max(23,43,5,98,1)

都输出 98,

求最小值,Math.min同理

2.数组添加到另外一个数组的尾部(...扩展符)

把arr4添加到arr3的尾部,可以看到,只是2个数组的追加,不会合并数组,去掉重复元素

代码语言:javascript
复制
let arr3 = [0, 1, 2, 3];
let arr4 = [3, 4, 5, 1, 9];
arr3.push(...arr4);
console.log(arr3)
console.log(arr4)

3.复制数组

3.1数组直接赋值

数组是复合的数据类型,直接复制的话,只是复制了指向底层数据结构的指针,而不是克隆一个全新的数组。

代码语言:javascript
复制
const a1 = [1,2]
const a2 = a1
a2[0] = 2
console.log(a1)
console.log(a2)

更改a2的值,会直接影响a1的值,a2并不是a1的克隆,而是指向同一份数据的另一个指针

 3.2 es5通过concat方法进行克隆,不会影响原来数组

concat方法会直接返回数组的克隆,不会影响原来数组

代码语言:javascript
复制
const a1 = [1 ,2]
const a2 = a1.concat()
a2[0] = 2
console.log(a1)
console.log(a2)

3.3 es6通过扩展字符串来实现克隆

代码语言:javascript
复制
const a1 = [1, 2]
// 写法一
const a2 = [...a1];
// 写法二
const [...a3] = a1;

a2[0] = 2
console.log(a1)
console.log(a2)
console.log(a3)

4.用Object.keys清空对象的属性值

es6新增keys方法,对数组进行遍历,返回遍历器对象,keys是对键名遍历,返回key的一个数组,再通过foreach循环,清空对象的属性

代码语言:javascript
复制
var param = {
    name:'may',
    age: '18'
}
var keys =Object.keys(param)

Object.keys(param).forEach(key => param[key] = '')

keys
param

5.forEach,遍历数组,无返回值,不改变原数组

 forEach遍历数组,没有返回值,不改变原数组,仅仅只是用来遍历数组,常用来注册组件,指令等

代码语言:javascript
复制
var arr = [1,2,3,4]
arr.forEach((item,index,arr) => {
    console.log(item,index,arr)
})

 6.map遍历数组,返回新数组,不改变原数组

map遍历数组,返回一个新的数组,不改变原数组

代码语言:javascript
复制
var arr = [1,2,3,4,5]
var brr = arr.map((item,index,arr) => {
    return item * 10
})
console.log(arr,brr)

 7.filter,过滤掉数组不符合条件的值,返回新数组,不改变原数组

filter,遍历数组,过滤掉数组中不符合条件的值,返回新数组,不改变原数组

代码语言:javascript
复制
var arr = [1,2,3,4]
var brr = arr.filter((item,index,arr) => {
    return item > 2
})
brr

 8.reduce

reduce,让数组的前后两项执行方法里的条件,并返回最终计算结果,不改变原数组。函数多了一个result的参数,result是上次计算的结果,resulte默认值为第一个数组元素。

代码语言:javascript
复制
var arr = [1,2,3,4]
var b = arr.reduce((result,item,index,arr) => {
    return result + item
})
b

 9 some()

some遍历数组,如果有一个元素符合条件,则返回true,并停止遍历;如果没有返回条件的元素,返回false。不改变原数组

代码语言:javascript
复制
var arr = [1,3,4,5]
var b = arr.some((item,index,arr) => {
    return item  === 4
})
b

 10.every

遍历数组,如果每个元素都符合条件,那么返回true;如果有一个元素不符合条件,则返回false,并停止遍历

代码语言:javascript
复制
var arr = [1,2,3,4]
var b = arr.every((item,index,arr) => {
    return item > 0
})
b
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-09-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.求最大值(Math.max)
  • 2.数组添加到另外一个数组的尾部(...扩展符)
  • 3.复制数组
    • 3.1数组直接赋值
      •  3.2 es5通过concat方法进行克隆,不会影响原来数组
        • 3.3 es6通过扩展字符串来实现克隆
        • 4.用Object.keys清空对象的属性值
        • 5.forEach,遍历数组,无返回值,不改变原数组
        •  6.map遍历数组,返回新数组,不改变原数组
        •  7.filter,过滤掉数组不符合条件的值,返回新数组,不改变原数组
        •  8.reduce
        •  9 some()
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档