The initial value of the @@iterator property is the same function object as the initial value of the values property.



Return value

The array iterator function, which is the values() function by default.


Iteration using for...of loop

var arr = new Uint8Array([10, 20, 30, 40, 50]);
// your browser must support for..of loop
// and let-scoped variables in for loops
for (let n of arr) {

Alternative iteration

var arr = new Uint8Array([10, 20, 30, 40, 50]);
var eArr = arr[Symbol.iterator]();
console.log(; // 10
console.log(; // 20
console.log(; // 30
console.log(; // 40
console.log(; // 50


Specification Status Comment
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of '%TypedArray%.prototype[@@iterator]()' in that specification.
Standard Initial definition.
ECMAScript Latest Draft (ECMA-262)
The definition of '%TypedArray%.prototype[@@iterator]()' in that specification.
Living Standard  

Browser compatibility

FeatureChromeEdgeFirefoxInternet ExplorerOperaSafari
Basic support Yes ?

17 — 271

27 — 362 3


Yes Yes Yes
FeatureAndroid webviewChrome for AndroidEdge mobileFirefox for AndroidIE mobileOpera AndroidiOS Safari
Basic support Yes Yes ?36 Yes Yes Yes

1. Supported as iterator.

2. A placeholder property named @@iterator is used.

3. Supported as @@iterator.

4. The @@iterator symbol is implemented.

See also

Document Tags and Contributors

 Contributors to this page: fscholz, eduardoboucas, arai
 Last updated by: fscholz,