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
복사