老师我想请问一下,为什么我打印Symbol.asyncIterator是undefined
以及请问下老师我其实代码中并没有实现它的asyncIterator这个方法,为什么还是支持for await of?
let promise1 = new Promise((res) => {
setTimeout(() => {
res(1)
}, 1000);
})
let promise2 = new Promise((res) => {
setTimeout(() => {
res(2)
}, 2000);
})
const asyncList = [ promise1,promise2 ]
console.log(asyncList[Symbol.asyncIterator],'iterator')
for(let i of asyncList) {
console.log(i,'iiii')
}
(async function () {
for await(let i of asyncList) {
console.log(i,'async i')
console.log("ater async i")
}
})()
打印结果
为什么iterator是undefined?
以及我没有实现[Symbol.asynciterator]为什么数组还是可以实现异步迭代,请问老师哪些对象内置了实现以及什么情况下需要我们自己实现?
前端无门槛学习,从ES6到ES11,一套课程掌握JS最新语法
了解课程