面试题答案
一键面试const asyncIterableObject = {
[Symbol.asyncIterator]() {
let num = 1;
return {
async next() {
return new Promise(resolve => {
setTimeout(() => {
if (num <= 10) { // 假设迭代10次,可以根据需要调整
resolve({ value: num++, done: false });
} else {
resolve({ value: undefined, done: true });
}
}, 1000); // 模拟异步操作,这里延迟1秒
});
}
};
}
};
// 使用示例
(async () => {
for await (const value of asyncIterableObject) {
console.log(value);
}
})();