본문 바로가기

JavaScript/JS-Tip

slice : 배열을 자르거나, arguments 객체를 배열로 만드는 방법

먼저 함수로 받은 인자들을 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) 까지를 배열로 리턴했다.

 

 

감사합니다.