Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- React.js
- vue.js
- 개발콘텐츠
- JS console
- CSS
- Chart.js
- React Native
- react
- 리액트
- 타입스크립트
- 누구나 자료구조와 알고리즘
- reactjs
- 성능최적화
- 커스텀
- 타입좁히기
- 제네릭
- typescript
- 반복줄이기
- utilty type
- 공통컴포넌트
- const 단언문
- 2022
- returnType
- NonNullable
- javascript
- 폰트적용하기
- click and drag
- 레이아웃쪼개기
- TSDoc
- 티스토리꾸미기
Archives
- Today
- Total
몽땅뚝딱 개발자
[Javascript] Argument 처리 본문
출처
🚀 Argument 처리 메커니즘
◽ Argument 처리 구조
함수가 호출되면 함수 안에서 우선 argument object를 만들고, 파라미터를 {key:value} 형태로 저장한다.
key가 없기 때문에 파라미터 수 만큼 0부터 인덱스를 부여하여 그 인덱스를 key로 사용한다.
파라미터로 받은 값을 value에 설정한다.
{0: param1, 1: param2}이 형태이다.
이 형태를 'Array-like'라고 부르며, array처럼 처리될 수 있다는 의미인 듯 하다.
- key값이 0부터 1씩 증가해야 한다.
- length 프로퍼티가 있어야 한다.
function get() {
return arguments;
}
console.log(get("A", "B"));
[실행 결과]
{0: A, 1: B}
◽ 엔진의 파라미터 처리 (※ 함수의 초기화 단계에서 진행)
1. get() 함수를 호출하여 2개의 파라미터를 넘겨준다.
2. 넘겨받은 값을 함수의 파라미터 이름에 설정한다.
파라미터 이름: one, 값: 10이면 one:10 형태로 정적환경의 선언적 환경레코드에 설정한다.
3. argument object를 생성한다.
- length 프로퍼티에 넘겨받은 파라미터의 수를 설정
- 파라미터 수 만큼 반복하며 {0: 10}, {1: 15}... 형태로 파라미터 값을 설정
'Development > Javascript' 카테고리의 다른 글
[Javascript] 호이스팅(Hoisting) (0) | 2021.07.07 |
---|---|
[Javascript] 스코프(Scope) (0) | 2021.07.07 |
[Javascript] 오버로딩(Overloading) (0) | 2021.07.07 |
[Javascript/ES6+] Arrow Function (0) | 2021.07.07 |
[Javascript/ES6+] const 변수 (0) | 2021.07.07 |
Comments