유사 배열을 배열로 변경하는 함수

  • 해당 유틸리티 함수를 만드는 목적 : 배열의 메서드를 사용하고 싶다. 단, 기존의 배열을 손상하지 않고 새로운 배열로 반환하고 싶다.

  • 유사배열 : HTMLCollection, NodeList, arguments

Array.from() 사용하여 만들기

  • 단점 : IE 호환성에 문제가 있다. 모든 브라우저에 호환될 수 있도록 안전한 유틸리티 함수를 만들어야 한다.

var makeArr = function (arrayLikeObject) {
  return Array.from(arrayLikeObject);
};

결과 값 확인 ![](./assets/D20_TIL_attached_file5.jpg)

slice()call() 사용하기

  • 브라우저 호환성 문제 없다.

var makeArray = function (arrayLikeObject) {
  return [].slice.call(arrayLikeObject);
};

결과 값 확인 ![](./assets/D20_TIL_attached_file6.jpg)

Last updated