作者:文静的疯子19__97 | 来源:互联网 | 2023-05-18 16:57
MSDN引用Javascript的Set集合抽象.我有一个对象数组,我想转换为一个集合,以便我能够.delete()
按名称删除()各种元素:
var array = [
{name: "malcom", dogType: "four-legged"},
{name: "peabody", dogType: "three-legged"},
{name: "pablo", dogType: "two-legged"}
];
如何将此数组转换为集合?更具体地说,是否可以在不迭代上述数组的情况下执行此操作?文档相对缺乏(足以用于实例化的集合;不适用于转换 - 如果可能的话).
我也可能正在考虑转换为Map,以便按键删除.我想要实现的是一个可迭代的集合,可以通过主要通过密钥(而不是索引)访问元素来访问或修改.
从阵列到另一个阵列的转换是最终目标.
1> levi..:
只需将数组传递给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));