У меня есть функция foo
, которая возвращает объект, который можно повторить:
const foo = () => ({
[Symbol.iterator]: function * () {
yield * [ 1, 2, 3 ];
},
});
for (const x of foo()) {
console.log(x);
}
// 1
// 2
// 3
Теперь я хотел бы аннотировать foo
с определениями типа потока.Но как они выглядят?
Кроме того, как насчет версии async
, bar
?
const bar = () => ({
[Symbol.asyncIterator]: async function * () {
yield * [ 1, 2, 3 ];
},
});
for await (const x of bar()) {
console.log(x);
}