Inflearn コミュニティ Q&A
take 내부의 이터레이터 클로저에 대해
作成
·
487
2
while (!(cur = iter.next()).done) {
let a = cur.value;
를
for (const a of iter) {
로 바꾸면 비동기상황에서 iter를 기억하지 못해서 하나만 take하게 되더라구요.
두 문법이 같은 걸로 알고있는데 for of 내부의 이터레이터는 클로저로 사용될수없나요? 이런경우엔 while밖에 쓸수없는건가요?
클로저로 사용되려면 함수내부에서 표현식 안에 갖혀있어야된다는 조건? 같은게 있나요?
함수형-프로그래밍javascript
回答 4
3
3
0
아 ! 필터 함수에서 만들어진 이터레이터가 reduce나 take 함수로 넘어오는거고 for...of 문을 순회하다가 중간에 재귀함수를 호출하면 제너레이터로 생성된 이터레이터에 리턴 메서드를 호출하게 되는걸까요 ?!
답변 감사합니다!! 🥹
0
mduniv
インストラクター
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/Generator/return
이걸 보신 후
babel에서 for...of 를 테스트해보세요. :)







제너레이터로 생성된 이터레이터에 있습니다 :)