配列のキーと値のセットを配列にして新しいイテレーターを生成
配列のキーと値のセットを配列にして新しいイテレーターを生成するには、array.entriesメソッドを使用します。
構文
var iterator = array.entries();
戻り値
生成したイテレーターを返します。
サンプルコード
JavaScript
var foo = ['a', 'b', 'c', 'd', 'e', 'f', 'g'];
var bar = foo.entries();
console.log(bar.next().value);
Array Iteratorオブジェクト
Array IteratorオブジェクトはArrayオブジェクトとは違い、nextメソッドしか持っていません。
nextメソッドは、Array Iteratorオブジェクトから次の値をオブジェクトで取得します。
nextメソッドで返ってくるオブジェクトは、valueプロパティとdoneプロパティを持っています。
valueプロパティはキーと値のセットを配列で返します。
nextメソッドで最後の値を取得した後にさらにnextメソッドを実行した場合は、
undefined値を返します。
JavaScript
var foo = ['a', 'b'],
bar = foo.entries();
console.log(bar.next().value); // [0, 'a']
console.log(bar.next().value); // [1, 'b']
console.log(bar.next().value); // undefined
doneプロパティは、すべての値を取得し終えたかを判定します。
取得し終えている場合はtrue、そうでない場合はfalseを返します。
JavaScript
var foo = ['a', 'b'];
var bar = foo.entries();
console.log(bar.next().done); // false
console.log(bar.next().done); // false
console.log(bar.next().done); // true