Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ES6之 Set & Module #10

Open
doreenChenD opened this issue Dec 11, 2018 · 0 comments
Open

ES6之 Set & Module #10

doreenChenD opened this issue Dec 11, 2018 · 0 comments

Comments

@doreenChenD
Copy link
Contributor

ES6 之 Set & Module

目录

  • Set WeakSet
  • Map WeakMap

Set

  1. 新的数据结构
  2. 类似数组
  3. 没有重复的值
  • Set本身是一个构造函数。
    -Set是无重复值的有序列表。Set允许对它包含的数据进行快速访问,从而增加了一个追踪离散值的更有效方式。你一般不会像对待数组那样来访问Set中的某个项,相反更常见的是,只在 Set 中检查某个值是否存在。

Set的方法

image

  1. Add: 添加成员(不发生类型转化),
  2.     返回Set结构本身
    
  3. Delete:删除 ,返回是否成功
  4. Has:返回是否包含
  5. Clear:清楚所有成员,无返回
  6. 遍历:顺序为插入顺序
  7. Keys(): (没有键值,等于Values)
  8. Values():
  9. Entries():键值对
  10. forEach(): 使用回调函数遍历每个成员
  11. Size: 长度

规范中的Set

add 方法:
image

image

image

image

WeakSet

  1. 与Set类似
  2. WeakSet 的成员只能是对象,而不能是其他类型的值。

image

WeakSet的方法们

image

  1. Add:
  2. Delete: 清除指定成员
  3. Has: 返回是否存在
    WeakSet不能遍历,是因为成员都是弱引用,随时可能消失,遍历机制无法保证成员的存在,很可能刚刚遍历结束,成员就取不到了。WeakSet 的一个用处,是储存 DOM 节点,而不用担心这些节点从文档移除时,会引发内存泄漏。

Map

  1. 构造函数
  2. 键值对,键不限为字符串 (字符串——值) => (值——值)
    image

image

Map的方法们

image

  1. Size:返回成员总数
  2. Set(key, value): 返回Map
  3. Get(key): 返回键值,无则undefined
  4. Has(key):返回是否存在
  5. Delete(key):返回是否删除成功
  6. Clear(): 无返回;
  7. 遍历:(顺序为插入顺序)
  8. Keys();
  9. Values();
  10. Entries(); forEach()

WeakMap

image

image

image

@doreenChenD doreenChenD added invalid This doesn't seem right 前端知识分享 and removed invalid This doesn't seem right labels Dec 11, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant