TypedArray.prototype[Symbol.iterator]()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2016.

Die [Symbol.iterator]() Methode von TypedArray Instanzen implementiert das Iterable-Protokoll und ermöglicht es, dass typisierte Arrays von den meisten Syntaxen, die Iterables erwarten, wie der Spread-Syntax und for...of Schleifen, konsumiert werden. Sie gibt ein Array-Iterator-Objekt zurück, das den Wert jedes Indexes im typisierten Array liefert.

Der anfängliche Wert dieser Eigenschaft ist dasselbe Funktionsobjekt wie der anfängliche Wert der TypedArray.prototype.values Eigenschaft.

Probieren Sie es aus

Syntax

js
typedArray[Symbol.iterator]()

Parameter

Keine.

Rückgabewert

Der gleiche Rückgabewert wie TypedArray.prototype.values(): ein neues Iterable-Iterator-Objekt, das den Wert jedes Indexes im typisierten Array liefert.

Beispiele

Iteration mit der for...of Schleife

Beachten Sie, dass Sie diese Methode selten direkt aufrufen müssen. Das Vorhandensein der [Symbol.iterator]() Methode macht typisierte Arrays iterable, und iterierende Syntaxen wie die for...of Schleife rufen diese Methode automatisch auf, um den Iterator zum Durchlaufen zu erhalten.

js
const arr = new Uint8Array([10, 20, 30, 40, 50]);
for (const n of arr) {
  console.log(n);
}

Manuelles Erstellen des Iterators

Sie können dennoch manuell die next() Methode des zurückgegebenen Iterator-Objekts aufrufen, um maximale Kontrolle über den Iterationsprozess zu erreichen.

js
const arr = new Uint8Array([10, 20, 30, 40, 50]);
const arrIter = arr[Symbol.iterator]();
console.log(arrIter.next().value); // 10
console.log(arrIter.next().value); // 20
console.log(arrIter.next().value); // 30
console.log(arrIter.next().value); // 40
console.log(arrIter.next().value); // 50

Spezifikationen

Specification
ECMAScript Language Specification
# sec-%typedarray%.prototype-%symbol.iterator%

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch