JavaScript - Set.values() 方法



JavaScript 中的 Set.values() 方法返回一个迭代器对象,该对象包含集合中所有值,其顺序与插入顺序相同。此迭代器可用于使用循环或 next() 等方法迭代 Set 的值。此方法允许您访问存储在集合中的元素,而无需依赖键或索引。

此方法的工作方式类似于 keys() 方法。

语法

以下是 JavaScript Set.values() 方法的语法:

values()

参数

此方法不接受任何参数。

返回值

此方法返回一个迭代器对象,其中包含 Set 中所有值,其顺序与插入顺序相同。

示例

示例 1

在下面的示例中,我们使用 keys() 方法迭代 Set 对象的值,并使用 for...of 循环从 keys() 方法的结果中打印它们。

<html>
<body>
   <script>
      const set = new Set();
      set.add('a');
      set.add('b');
      set.add('c');
      
      const iterator = set.values();
      for (const value of iterator) {
         document.write(value, "<br>");
      }
   </script>
</body>
</html>

如果我们执行上述程序,它将打印集合中的每个值。

示例 2

在这个例子中,我们使用 values() 方法为 Set 中的值创建一个迭代器。然后,我们使用迭代器上的 next() 方法手动检索每个值元素。

<html>
<body>
   <script>
      const mySet = new Set(["apple", "banana", "orange"]);
      const iterator = mySet.values();
      document.write(iterator.next().value);
      document.write(iterator.next().value);
      document.write(iterator.next().value);
   </script>
</body>
</html>

正如我们在输出中看到的,它返回了集合中的每个值元素。

示例 3

在下面的示例中,我们使用展开运算符 (...) 将 values() 方法返回的迭代器转换为一个包含集合所有值的数组。

<html>
<body>
   <script>
      const mySet = new Set(["apple", "banana", "orange"]);
      const valuesArray = [...mySet.values()];
      document.write(valuesArray);
   </script>
</body>
</html>

如果我们执行上述程序,它将返回一个包含集合中每个值的数组。

广告