请问一下老师,关于数组用Set去重后转回数组的问题
来源:2-8 Set 的注意事项
慕仙7313728
2022-07-15 21:38:01
//①需要数组或者字符串去重的时候
const arr=[1,2,1,2,3,3,4,4,5];
const s=new Set(arr);
console.log(s);//Set(5) {1, 2, 3, 4, 5}
let arr2=[];//遍历
s.forEach(function(value,key,set){
arr2.push(value)
})
console.log(arr2);//[1, 2, 3, 4, 5]
const newArr=[...s]
console.log(newArr);//[1, 2, 3, 4, 5]请问老师,set能使用展开,是不是因为set类似一个对象??
用forEach遍历后push后面是用value还是key,打印出来结果相同。所以还是两者都可以?因为set中value和key相等。
如果不是set,那遍历后需要得到相关的值是用value吗??
1回答
同学你好,解答如下:
1、可以把set看成对象形式,所以能够展示。
2、是的。forEach遍历set时,key和value是一样的,使用哪个都行。
3、其他数据类型,遍历时如果想取到值,可以通过打印看一下value和key哪个是。不同的遍历方式,value和key的顺序可能不同,不用特殊记忆。
祝学习愉快!
相似问题