먼저 함수로 받은 인자들을 arguments 유사배열로 확인할 수 있다.
그것을 Array.prototype.slice.apply 를 통해서 배열로 리턴해보자.
slice 메서드는
slice(start, end) 형태로 start 와 end 값을 받아서 start 인덱스 부터 end -1 인덱스까지 잘라서 리턴한다.
0 또는 인자를 넘기지 않을 경우 이 메서드(slice) 를 호출한 배열 전체를 복사 하여 새로운 배열을 추가한다.

function myFunction() {
console.dir(arguments);
var args = Array.prototype.slice.apply(arguments);
return args;
}
var arrA = myFunction(1, 2, 3);
var arrB = arrA.slice(1, 3);
console.dir(arrA);
console.dir(arrB);
- myFunction 으로 1,2,3을 넘겼다.
- arrA 에서 배열로 전달 받았다.
- arrB 로 arrA의 인덱스 1부터 2(3-1) 까지를 배열로 리턴했다.
감사합니다.
'JavaScript > JS-Tip' 카테고리의 다른 글
hasOwnProperty : 객체의 프로퍼티나 메서드 검사 (0) | 2020.03.21 |
---|---|
자바스크립트 함수 리턴 규칙 (0) | 2020.03.21 |
생성자 함수 - 강제 인스턴스 생성 , new 키워드 빠짐 방지 방법 (0) | 2020.03.20 |