MSDN引用了JavaScript的Set集合抽象。我有一个要转换为集合的对象数组,以便能够.delete()按名称删除()各种元素:
var array = [ {name: "malcom", dogType: "four-legged"}, {name: "peabody", dogType: "three-legged"}, {name: "pablo", dogType: "two-legged"} ]; 如何将此数组转换为集合?更具体地说,是否可以在不迭代以上数组的情况下执行此操作?相对缺少文档(对于实例化集足够;对于转换,则足够)(如果可能的话)。
我可能还在考虑转换为Map,以通过密钥将其删除。我要完成的工作是一个可迭代的集合,可以通过主要通过键(而不是索引)来访问元素来访问或修改该集合。
从数组到另一个的转换是最终目标。 问题来源于stack overflow
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
只需将数组传递给Set构造函数即可。Set构造函数接受一个iterable参数。Array对象实现了iterable协议,因此它是有效参数。
var arr = [55, 44, 65]; var set = new Set(arr); console.log(set.size === arr.length); console.log(set.has(65));