JavaScript - Set.entries() 方法



JavaScript 中的 Set.entries() 方法将返回一个新的迭代器对象,该对象包含 Set 对象中每个元素的 [value, value] 对数组,按插入顺序排列。

语法

以下是 JavaScript Set.entries() 方法的语法 -


 entries()

参数

此方法不接受任何参数。

返回值

此方法返回一个新的可迭代器对象。

示例 1

在下面的示例中,entries() 方法返回一个迭代器,而 for...of 循环遍历这些条目并打印它们。


<html>
<body>
	 	<script>
	 	 	 const mySet = new Set(["One", "Two", "Three"]);
	 	 	 const iterator = mySet.entries();

	 	 	 for (const entry of iterator) {
	 	 	 	 	document.write(`Result: ${[...entry]} <br>`);
	 	 	 }
	 	</script>
</body>
</html>

如果我们执行上述程序,iterator 对象将包含一个 key 和 value 相同值的数组。

示例 2

在此示例中,将创建一个包含重复和唯一编号的 Set。entries() 方法返回一个迭代器,扩展运算符用于将迭代器转换为唯一的 [value, value] 对数组,丢弃重复项。


<html>
<body>
	 	<script>
	 	 	 const uniqueNumbers = new Set([1, 2, 3, 2, 4, 5]);
	 	 	 const uniqueEntries = uniqueNumbers.entries();
	 	 	 document.write([...uniqueEntries]);
	 	</script>
</body>
</html>

正如我们看到的输出,将返回一个唯一的 [value, value] 对数组。

示例 3

在这里,我们使用 next() 方法来检索第一个条目,它是一个元素同时作为 key 和 value 的数组。


<html>
<body>
	 	<script>
	 	 	 const colors = new Set(['red', 'green', 'blue']);
	 	 	 const entries = colors.entries();
	 	 	 document.write(entries.next().value, "<br>");
	 	 	 document.write(entries.next().value, "<br>");
	 	 	 document.write(entries.next().value);
	 	</script>
</body>
</html>

如果我们执行程序,它会返回 [value, value] 对。