values()
方法用于获取数组中每个元素的value值。我们可以通过循环或迭代器方法迭代数组元素。
语法
array.values();
参数
无。
返回值
它创建并返回一个新创建的数组迭代器对象。
方法示例
让我们讨论一些示例以更好地理解。
示例 1
这是一个使用 for...of 循环实现的示例。
<html>
<head> <h5> Javascript Array 方法</h5> </head>
<body>
<script>
var arr = ["John","Mary","Tom","Harry","Sheero"]; //初始化一个数组
var itr = arr.values(); //使用values() 方法.
document.write("数组元素为:<br>");
for (let x of itr) {
document.write("<br>"+x);
}
</script>
</body>
</html>
输出:
迭代后,数组的元素表示为:
Javascript Array Methods
数组元素为:
John
Mary
Tom
Harry
Sheero
示例2
使用 for...of 循环的数组 values() 方法的另一种实现。
<html>
<head> <h5> Javascript Array 方法</h5> </head>
<body>
<script>
const arr=["P","Q","R","S","T"]; //初始化一个数组
const itr=arr.values();
document.write("数组元素是: <br>");
for(let x of itr)
{
document.write("<br>"+x);
}
</script>
</body>
</html>
输出:
Javascript Array Methods 数组元素是: P Q R S T
示例3
使用 next() 方法实现的示例。
<html>
<head> <h5> Javascript Array 方法</h5> </head>
<body>
<script>
var arr=["John","Tom","Sheero","Romy","Tomy"];
var itr=arr.values();
document.write("数组元素是: <br>");
document.write("<br>"+itr.next().value);
document.write("<br>"+itr.next().value);
document.write("<br>"+itr.next().value);
document.write("<br>"+itr.next().value);
document.write("<br>"+itr.next().value);
</script>
</body>
</html>
注意:如果 next() 方法使用超过给定的数组长度,它将返回一个'undefined'值。
我们通过一个例子来理解:
示例
<html>
<head> <h5> Javascript Array 方法</h5> </head>
<body>
<script>
var arr=["John","Tom","Sheero","Romy","Tomy"]; //初始化数组
var itr=arr.values();
document.write("数组元素是: <br>");
document.write("<br>"+itr.next().value); //返回索引0的元素
document.write("<br>"+itr.next().value); //返回索引1的元素
document.write("<br>"+itr.next().value); //返回索引2的元素
document.write("<br>"+itr.next().value); //返回索引3的元素
document.write("<br>"+itr.next().value); //返回索引4的元素
document.write("<br>"+itr.next().value); //返回 undefined
</script>
</body>
</html>
输出:
Javascript Array Methods
数组元素是:
John
Tom
Sheero
Romy
Tomy
undefined
很明显数组的大小是4,即arr[4]。但是 next() 方法被使用了 5 次。因此,对 next() 的最后一次调用返回了一个"undefined"值。
注意:数组迭代器对象携带数组地址作为其值,因此分别取决于数组中存在的值。