浅谈ES6新增的数组方法和对象

前端之家收集整理的这篇文章主要介绍了浅谈ES6新增的数组方法和对象前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

es6新增的遍历数组的方法,后面都会用这个方法来遍历数组,或者对象,还有set,map

遍历数组最简洁直接的方法

输出1,2 }

1. 数组.map()

返回一个新的数组,es5要复制一个新的数组我们一般用循环,现在直接用map

value) console.log(newArr)//输出[1,4],当然里面也可以返回下标的数组 console.log(newArr==arr)//输出false

2. 数组.filter()

过滤,返回为真的值,

value>=3) console.log(newArr1);//输出[3,3]

3. 数组.reduce()

每个参数的意思prevIoUsValue上次回调的返回值或者初始值,currentValue正在处理的数组值,currentIndex正在处理函数的下标

pre>cur?pre:cur) //pre=1不大于cur=2,返回2; //pre接收返回值2;pre=2不大于cur=3,返回3 ..... //一直找到4并且返回4; //pre接收4,pre=4大于pre=3然后就一直返回的都是4,这样就会找到最大值

console.log(newArr2)//输出4,找到最大值,如果想找最小值只需要pre<cur?pre:cur

es6提供的一种新的数据结构,它类似于数组,但是成员的值都是唯一的,没有重复的值(包括NaN),但是set内部对象是不相等的

Set不是数组,自然就没有length属性,它有size属性,set.size,就是返回它的成员数量;

输出set {1,4} console.log(set.add(2))//依然输出set {1,4} console.log(set.add(5))//输出 set {1,5} console.log(set.delete(1))//输出true,表示删除成功 console.log(set.has(2))//输出true,表示存在这个值 console.log(set.clear())//输出undefined,这个方法知识删除所有值,并没有返回值 console.log(set)//这时候set已经清空了,所以输出为 set {}

Array.from()方法从一个类似数组或可以迭代的对象中创建一个新的数组实例

方法就可以把set对象转换我数组,输出为[1,1] console.log(Array.from('hello'))//输出为['h','e','l','o']

利用set 和 from达到数组去重

输出[1,5],以后别人问你怎么数组去重,你可以装下逼了

写到这里突然想到es6的...方法

Set的遍历方法

输出键 } for (let value of set.values()) { console.log(value)//输出值 } for (let value of set.entries()) { console.log(value)//输出键值对 }

es6提供了Map数据结构,它类似于对象,也是键值对的集合,但是它的强大在于键的范围可以任何类型的数据;

'张三',[ 1,3 ] => 18,{} => '男' }如果没有这个键,就会添加新的键值对到后面 console.log(map.get("name"))//输出李四 console.log(map.delete("name"))//输出true console.log(map.clear())//删除所有键值对

以上这篇浅谈ES6新增的数组方法和对象就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程之家。

原文链接:https://www.f2er.com/js/37321.html

猜你在找的JavaScript相关文章