Search
Duplicate

Argument

Argument 처리 메커니즘, Argument 처리 구조, 엔진의 파라미터 처리

Argument 처리 구조

파라미터를 {key: value} 형태로 저장
파라미터 수만큼 0 부터 인덱스를 부여하고 이 인덱스를
key로 사용합니다.
파라미터로 받은 값을 value에 설정합니다.
{0: param1, 1: param2}
Array-like ⇒ 이런 구조를 Array-like라 부릅니다.
key 값이 0부터 1씩 증가합니다.
length 프로퍼티가 있어야합니다.
function get(){ return arguments; }; console.log(get("a", "b"));//{0: a, 1: b}
JavaScript
복사

엔진의 파라미터 처리

1.
get()함수를 호출하며 77과 100을 파라미터 값으로 넘겨줍니다.
2.
넘겨받은 값을 함수의 파라미터 이름에 설정합니다.
정적 환경(LE)의 선언적 환경 레코드(DER)에 설정합니다.
one: 77
3.
Argument 오브젝트를 생성합니다.
4.
넘겨받은 파라미터 수를 Argument 오브젝트의 length 프로퍼티에 설정합니다.
5.
넘겨받은 파라미터 수만큼 반복하면서
a.
0부터 key로 하여 순서대로 파라미터 값을 설정합니다.
b.
{0: 77}, {1: 100} 형태가 됩니다.
6.
함수의 초기화 단계에서 실행합니다.
var get = function(one){ return one; }; get(77, 100);
JavaScript
복사