코어 자바스크립트 예제 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
마지막 두 줄입니다.
[해결됨]윈도우즈 환경에서 타입 스크립트 파일이 실행이 안됩니다.
1
10
5
4강 카드뉴스 자동화 자료가 안보입니다!!
0
10
0
윈도우즈 환경에서 진행중입니다.
0
14
2
4강 카드뉴스 자동화 자료
4
51
1
라이브 강의 영상 녹화본이 있을까요?
0
59
1
인증이 늦었습니다ㅜㅜ 확인부탁드립니다
0
55
1
스웨거 접속이 안되는데 확인 부탁드립니다.
0
37
1
설명이 잘못된거같습니다.
1
52
2
수강자료 다운로드 관련 문의
0
68
2
선택정렬 이해하기 & 구현하기
0
41
1
mission12-01 guide.md파일 누락
0
50
2
자료집 관련
0
51
2
13. (App 2) 기본기 훈련 에서
0
71
1
챌린지 시작일 문의
0
72
0
2. 어떤 도구를 사용하는 것이 가장 유리할까? 강의 중
0
51
1
11차시 Antigravity IDE 설치 후
0
51
1
처음 에이전트 설정을 잘못 했을 경우 수정 하는 방법
0
58
1
5,6,7,8 내용이 없어요
0
55
1
브라우저의 ES6 모듈(ESM)을 사용하도록 Babel을 설정
0
306
2
할당문
0
350
1
함수 부분 질문입니다.
0
517
1
생성자 함수를 즉시실행함수로 감싸는 이유가 궁금합니다.
1
835
1
실행컨텍스트에서 BindingObject를 통한 객체의 프로퍼티와 메서드 질문
0
598
1
안녕하세요.
0
468
1





