안녕하세요 클로저 부분에서 질문 있습니다.
0
코드
function one() {
for (var i = 0; i < 3; i++) {
setTimeout(function () {
console.log(i);
}, i * i * 100);
}
}
function two() {
for (var i = 0; i < 3; i++) {
closure(i);
}
}
function closure(i) {
setTimeout(() => {
console.log(i);
}, i * i * 100);
};
one();
two();
생각한 실행 결과
3 3 3 0 1 2
실제 결과
3 0 3 1 3 2
이렇게 나오는데 혹시 생각한 실행 결과처럼 나오게 하려면 어떻게 할 수 있나요?
자바스크립트
javascript
클로저
비동기
Câu trả lời 1
1
i*i*100의 i에 0 1 2를 각각 넣어보시면 왜 타이밍이 그렇게 나오는지 아실 수 있습니다.
iput 입력글자 제한에러...
0
226
0
리팩토링 관련 질문입니다. (자스스톤)
0
275
1
카드 짝맞추기 react-native
0
340
0
필터 메소드 관련 질문입니다.
0
336
1
가위바위보 게임 질문드립니다~
0
202
1
자바스크립트 기초에 관해서 질문있습니다.
0
205
1
질문입니다.
1
357
1
이벤트 리스너 안에서 동작 질문드립니다.
0
323
2
질문드립니다.
0
188
0
안녕하세요 깊은 복사 부분에서 질문 있습니다.
0
243
1
document.createElement('')함수에서
0
244
2
안녕하세요 제로초님
0
736
1
끝말잇기 화면에 출력 반복문을 이용해서 횟수 제한
0
243
1
안녕하세요 제로초님 질문있습니다
0
314
1
안녕하세요 강의 정말 잘시청하고있습니다.
0
272
3
?
0
149
1
틱택토 게임에서 게임이 끝나고
0
564
1
9 곱하는게 이해가 안 되요~
0
171
1
지뢰찾기 에러잡아내기에서 질문있습니다!
0
453
4
지뢰찾기 에러 관련 질문!
0
479
3
리팩토링에 관한 질문입니다.
0
239
2
Array/Object spread
0
202
1
지뢰찾기게임에서 Math.random() 질문
0
219
1
질문있습니다!
0
240
1

