코어 자바스크립트 예제 5-14 질문
안녕하세요. 모던 자바스크립트를 읽다가 책이 빠르게 굵직한 부분을 훑고 싶어 강사님의 저서 '코어 자바스크립트'를 읽던 중 질문이 생겨 질문드립니다. 먼저 강의에 관련된 질문이 아닌 점 죄송합니다.
클로저, 135쪽, 예제 5-14, 부분 적용 함수 구현(1)
1. 9번째 줄의 arguments는 7번째 줄에서 return되는 익명함수의 렉시컬 환경에서 새로 생성된 argument이기 때문에 partial함수의 렉시컬 환경의 arguments(2번째 줄)과 다르다.
2. 7번째 줄에서 익명함수 선언 시 9번째 줄의 arguments는 익명함수의 렉시컬 환경에 수집되어 빈 객체 상태로 익명함수가 return된다.(실행 컨텍스트가 활성화 된느 시점이 아닌 선언 시점에 정보가 수집된다.)
3. 후에 21번째 줄에서 익명함수를 할당받은 addPartial 함수가 22번째 줄에서 호출 될때 7번째 줄의 arguments가 arguments object [6,7,8,9,10]로 재할당 된다.
4. 8번째 줄의 originalPartialArgs가 클로저를 이용한 것이다.
처음에 7번째 줄의 익명함수 속 arguments가 상위 스코프의 arguments(2번째 줄)을 참조한다고 생각했고 결과가 달라 고민한 결과 위와 같이 결론을 내렸습니다. 제가 잘 이해한 것인지 확인받고싶어 질문 드렸습니다. 다시한번 강의와 무관한 질문 드려 죄송합니다.
回答 3
1
전부 맞게 이해하셨습니다.
function 키워드를 사용한 모든 함수는 arguments를 내장합니다.
따라서 상위 스코프의 arguments를 사용하려면 작성하신 대로 originalPartialArgs와 같은 변수에 담아두어야 합니다.
0
마지막 두 줄입니다.
선생님 공유해주신 핸드북에 링크가 몇개 잘못되었어요
0
13
2
62강 실습자료가 잘못되었습니다.
0
13
1
코드 자료는 없는걸까요?
0
22
2
강의 목표
0
33
1
강의 노트 위주로 학습
0
34
1
쿠키 생성 관련
0
64
3
JWT auth error invalid token
0
59
2
경력기술서는 어떤 방향이 좋을까요?
0
52
2
MSA 와 BFF 아키텍처 설명 부분에 대한 문의
0
50
1
eslint.config.js 설정 질문입니다.
0
63
2
7강 흐름 제어 아키택쳐 코드 순서
1
53
1
수업자료 어디서 찾아볼 수 있나요?
0
47
2
함수 강의의 정답.. 어떤가요?
0
40
1
깃권한요청드립니다
0
39
1
<div id="banner">배너 이미지</div> 관련 질문
0
34
1
강의자료
0
41
1
윈도우에서 Node js를 설치하고 싶어요
0
37
0
addToFile function에서 path를 사용해 새로운 파일을 생성
0
46
1
브라우저의 ES6 모듈(ESM)을 사용하도록 Babel을 설정
0
296
2
할당문
0
341
1
함수 부분 질문입니다.
0
509
1
생성자 함수를 즉시실행함수로 감싸는 이유가 궁금합니다.
1
827
1
실행컨텍스트에서 BindingObject를 통한 객체의 프로퍼티와 메서드 질문
0
590
1
안녕하세요.
0
464
1

