게시글
질문&답변
2022.02.06
헉 너무 어려운거같아요!
강사님께서 괄호만 추가해 주셨더라면 좀 더 쉽게 이해 했을 수 있겠다 싶었습니다. if(scroll > (section[i].offsetTop - window.outerHeight/2) && scroll 이렇게요. 비교 연산자와 명확한 구분을 안해 주셔서 그만... 참고로 if문 괄호 안이 참(true)일 경우에 넘어갑니다. 따라저 저 긴 문장이 참일경우에 바로 아래 단락을 실행하는거죠. 한국말로 하자면, ( 스크롤 값이 섹션 1 번째 높이에서 윈도우 높이 절반을 뺀 값보다 크고, && 스크롤 값이 섹션1 번째 높이에서 윈도우 절반 높이 값 더하기 섹션1번째 자체 높이값 보다 작은 경우. ) 아래를 실행 하라. 의미적으로는 섹션 1의 영역 안에 있을 경우의 i값을 나타냅니다.
- 0
- 2
- 169
질문&답변
2022.02.06
pageChangeFunc에 대해 질문있습니다.
아 저는 강사는 아닌데요. 같이 듣는 수강생입장에서 말씀 드려보아요. for문은 스크롤 할때마다 1 이렇게 도는게 아니라 순식간에 1,2,3,4를 돌아요. 그래서 for 문안에 있는 기능을 순식간에 한번씩 돌죠. 그래서 함수를 for문 안에 넣으면 스크롤의 매 순간마다 엄청난 횟수의 함수를 실행하는 셈인거죠. 굳이 연산을 노가다를 시켜서 점유율을 올릴 필요가 없으니까 for문은 검출기 역할로만 하고 결과 끝나면 break로 나가버리게 하는거구요. 그에 따라 도출된 pageNum 값 i를 가지고 함수를 실행하는걸로 파악됩니다. 제가 궁금한건 여기서 이때 실행된(for문 밖에서) 함수가 별도의 인자를 받아오지 않아도 for문에서 만들어진 값을 자동 적용해서 함수를 실행해 주고 있는게 신기합니다.
- 0
- 2
- 146