es6可迭代对象

本文深入探讨了ES6中的Set数据结构,包括其用于数组去重的方法,以及WeakSet的特点。接着,我们讨论了Map与WeakMap的区别,强调了它们在存储键值对时的灵活性,特别是WeakMap的弱引用特性,有助于避免内存泄漏。最后,我们了解了for...of循环在遍历这些数据结构时的应用。
摘要由CSDN通过智能技术生成

目录

01.set

 (1) 不重复的数组

(2)set去重

(3)weakSet

(4)map图

(5)for of

(6)总结


01.set

 (1) 不重复的数组

常用方法

add添加 

delete删除 

clear清除 

has判断有没有 

size长度

(2)set去重

let arr = [1,2,1,2,5,2,5];
arr =[...new Set(arr)]
		
console.log(arr)

(3)weakSet

WeakSet结构与Set类似,也是不重复的值的集合。

WeakSet的成员只能是对象,而不能是其他类型的值。

(4)map图

ES6提供了Map数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型的值(包括对象)都可以当作键

 类似对象

        特点:键可以是任意类型

        初始化:new map([["qq",20],["aa",22],["zz",33]])

var m = new Map([['Michael', 95], ['Bob', 75], ['Tracy', 85]]);

方法

set集合 get获取  delete删除  clear清楚  has判断有没有  size长度 WeakMap

就是一个 Map,只不过它的所有 key 都是弱引用,意思就是 WeakMap 中的东西垃圾回收时不考虑,使用它不用担心内存泄漏问题。 另一个需要注意的点是,WeakMap 的所有 key 必须是对象。没有size。

案例


// map 类似对象 键可以是任意类型
        var m1 = new Map([["zql",18],["mumu",20],[{a:1,b:2},30],]);
        console.log(m1);
 
//ES6提供了Map数据结构。它类似于对象,也是键值对的集合,但是“键”的范围不限于字符串,各种类型
的值

(5)for of

定义:for in 循环用于遍历数组,类数组或对象,ES6中新引入的for of循环功能相似,不同的是每次循环它提供的不是序号而是值。

案例1

案例2

   keys()        键集合    

values()     值得集合    

entries ()    键和值得集合

(6)总结

let 关键词声明的变量不具备变量提升(hoisting)

特性 let 和 const 声明只在最靠近的一个块中(花括号内)有效

当使用常量 const 声明时,请使用大写变量,

如:CAPITAL_CASING const 在声明时必须被赋值

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值