JavaScript Symbol asyncIterator Property
Last Updated :
19 May, 2023
JavaScript Symbol asyncIterator property is used to set an object as an async iterable. Iterable properties of this object can be iterated over using a for await…of loop.
An async iterable object is any object that returns a function that produces an AsyncIterator for its Symbol.asyncIterator property.
The Symbol.asyncIterator symbol is a built-in symbol that is used to access an object’s @@asyncIterator method.
Note: For an object to be an async iterable, it must have a Symbol.asyncIterator key.
Property attributes of Symbol.asyncIterator |
Writable |
no |
Enumerable |
no |
Configurable |
no |
Example codes for the above property are as follows:
Example 1:
Javascript
const GFG = {
async*[Symbol.asyncIterator]() {
let i = 0;
while (i < 10) {
if (i % 3 == 0) {
yield i;
}
i++;
}
}
};
(async () => {
for await (const x of GFG) {
console.log(x);
}
})();
|
Output:
0
3
6
9
Example 2:
Javascript
const myAsyncIterable = {
async*[Symbol.asyncIterator]() {
let i = 0;
while (i < 5) {
yield i++;
}
}
};
(async () => {
for await (const num of myAsyncIterable) {
console.log(num + "<br>" );
}
})();
|
Output
0
1
2
3
4
Browser Support: The browsers supported by JavaScript Symbol.asyncIterator Property are listed below:
- Google Chrome
- Firefox
- Edge
- Opera
- Safari
We have a complete list of Javascript symbols’ properties and methods, to check those please go through the Javascript Symbol Complete Reference article.
Share your thoughts in the comments
Please Login to comment...