iterator
如果没有iterator接口,就不能进行for of 循环
如果想要进行for if 循环,在没有iterator的情况下,需要先部署iterator接口
{
console.log("lesson3加载");
//iterator 基本用法 iterrator在数组中本身就有
let arr=["hello","word"];
let map=arr[Symbol.iterator]();
console.log("1",map.next());
console.log("2",map.next());
console.log("3",map.next());
}
{
//自定义iterator
let obj={
start:[1,3,2],
end:[7,8,9],
[Symbol.iterator](){
let self=this;
let index=0;
let arr=self.start.concat(self.end);
let len=arr.length;
return {
next(){
if(index<len){
return {
value:arr[index++],
done:false
}
}else{
return {
value:arr[index++],
done:true
}
}
}
}
}
}
for(let key of obj){
console.log(key);
}
}