配列のキーと値のセットを配列にして新しいイテレーターを生成

配列のキーと値のセットを配列にして新しいイテレーターを生成するには、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

JavaScript逆引きリファレンス一覧へ戻る