Day6_VSCODE_JavaScript_제네레이터(Generator)

2023. 4. 13. 08:53카테고리 없음

🟢제너레이터(Generator)
- 실행을 멈췄다가, 나중에 다시 접근 할 수 있는 특이한 형태의 함수
- 나중에 다시 접근하기 위해 context(변수)를 저장된 상태로 남겨둠
- 이터레이터를 좀 더 유연하게 사용할 수 있음

 

function* mutipleGenerator(){
            try{
                for(let i =0; i<10; i++){
                    console.log(i);
                    yield i ** 2;
                }

            }catch(error){
                console.log(erorr)	//에러처리시: error에 해당 error메세지가 들어감

            }
        }
const mutiple = mutipleGenerator();
        let next = mutiple.next();
        console.log(next.value,next.done) 
        //결과 0 false (false는 반복문 실행이 덜 됬다는 것 = 중간에 실행을 멈췄다는 것)
        
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
        next=mutiple.next()
        console.log(next.value,next.done)
728x90