✍️ react-saga > generator > iterator 까지 왔다. next method를 통해 다음 단계로 진행된다 정도로만 얕게 알고 있었기에, 제대로 알고 사용하고자 정리해 보았다.
{ value: n , done: false }
{ done: true }
를 반환 함.예시 코드
function iterator(start, end){
let index = start;
const it ={
next(){
let result;
if(index <= end){
result ={ value: index, done: false};
index++
}else{
result = { done: true};
}
return result;
}
}
return it;
}
const it = iterator(1, 10);
let result = it.next();
while(!result.done){
console.log(result.value);
result = it.next();
}
결과
예시 코드
const iterable = {
start : 1,
end: 10,
[Symbol.iterator](){
this.index = this.start
return this;
},
next(){
let result;
if(this.index <= this.end){
result ={ value: this.index, done: false};
this.index++
}else{
result = { done: true};
}
return result;
}
}
for (let num of iterable) {
console.log(num);
}
결과