-
카테고리
-
세부 분야
프론트엔드
-
해결 여부
미해결
반복문 코드에 대하여 궁금합니다.
21.07.05 02:17 작성 조회수 220
0
답변을 작성해보세요.
1
코딩일레븐
지식공유자2021.07.05
코딩일레븐
지식공유자2021.07.05
작성하신 코드로는 index 값(클릭 값) 을 제대로 가져올수 없습니다. console.log(pageNum) 을 찍어보시면 pageBtn.length 값이 나올 겁니다. 맨 마지막 i 값이 들어가는거죠.
호코더
질문자2021.07.06
CDplayer강의에서 이번에도 같은코드로 작성해보고, 말씀하신것처럼 콘솔로그를 찍어 봤는데. 이야기해주신거와 달리 현재 pageNum이 나오는거 같은데, 혹시 제가 잘못 짚고 있는게 있을까요? 아 물론 소스도 정상 작동해서 누르는 인덱스 번호로 페이지가 넘어갑니다.
++
1. 자료를 조금 더 찾아보니까 표현식과 선언식에 따른 차이일까요? 클로져 사용 유무때문에 그런걸까요?
https://joshua1988.github.io/web-development/javascript/function-expressions-vs-declarations/
2. var와 let에 따른 차이는 아니겠지요? 모든 선언을 let으로 하기는 했습니다.
코딩일레븐
지식공유자2021.07.06
위 상황은 for문에서 let을 사용해서 원하는 index를 가져올 수 있네요.
pointBtn[i].addEventListener("click", function() {
curPageNum = i;
console.log(curPageNum);
})
위처럼 사용하셔도 i값을 제대로 가져옵니다.
for문 안의 클릭이벤트는 그저 albumChangeFunc() 에서 사용할 curPageNum을 교체해주는
역할을 하는 것이기 때문에 작성해주신 대로 사용해도 전혀 문제가 없습니다.
답변 1