当前位置:   article > 正文

JavaScript高级程序设计(第四版)--学习记录之集合引用类型(下)

JavaScript高级程序设计(第四版)--学习记录之集合引用类型(下)

Map

map是一种新的集合类型,键/值存储机制。map可以使用任何JavaScript数据类型作为键。

基本API

  • set(),添加键值对
  • get(),查询键值对
  • has(),查询键值对
  • delete(),删除值
  • clear(),删除值
  1. const m = new Map();
  2. alert(m.has("firstName")); // false
  3. alert(m.get("firstName")); // undefined
  4. alert(m.size); // 0
  5. m.set("firstName", "Matt")
  6. .set("lastName", "Frisbie");
  7. alert(m.has("firstName")); // true
  8. alert(m.get("firstName")); // Matt
  9. alert(m.size); // 2
  10. m.delete("firstName"); // 只删除这一个键/值对
  11. alert(m.has("firstName")); // false
  12. alert(m.has("lastName")); // true
  13. alert(m.size); // 1
  14. m.clear(); // 清除这个映射实例中的所有键/值对
  15. alert(m.has("firstName")); // false
  16. alert(m.has("lastName")); // false
  17. alert(m.size); // 0

WeakMap

弱映射中的键只能是Object或者继承自Object的类型,值得类型没有限制。

基本API

  • set(),添加键值对
  • get(),查询
  • has(),查询
  • delete(),删除
  1. const wm = new WeakMap();
  2. const key1 = {id: 1},
  3. key2 = {id: 2};
  4. alert(wm.has(key1)); // false
  5. alert(wm.get(key1)); // undefined
  6. wm.set(key1, "Matt")
  7. .set(key2, "Frisbie");
  8. alert(wm.has(key1)); // true
  9. alert(wm.get(key1)); // Matt
  10. wm.delete(key1); // 只删除这一个键/值对
  11. alert(wm.has(key1)); // false
  12. alert(wm.has(key2)); // true

小结

Array、所有定型数组、Map、Set都定义了默认迭代器,都支持顺序迭代,都可以传入for-of循环,都兼容扩展操作符。 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/码创造者/article/detail/774015
推荐阅读
相关标签
  

闽ICP备14008679号