배열 유사 객체, Array-like object
- 배열처럼 동작하는 객체
- 배열과 비슷하여 인덱스로 요소 접근/읽기/수정 가능
- 실제 배열 x => 배열 메서드 사용 불가능
배열 유사 객체 특징
- 길이 속성
length
객체 내 요소의 개수
- 인덱싱
인덱스로 요소 접근 가능
인덱스는 0부터 시작
- 이터러블
보통 for 문, forEach() 메서드로 요소 순회 가능
- 배열 메서드 없음
배열 메서드 사용 불가능
console.log(배열유사객체명.length);
console.log(배열유사객체명[인덱스번호]);
for(var i=0; i<배열유사객체명.length; i++) {
console.log(배열유사객체명[i]);
}
배열 유사 객체 종류
1. NodeList
- DOM 메서드에 의해 반환
- 정적이며 실제 DOM 구조의 변경에 대한 반영을 하지 않습니다.
- 배열 유사 객체
2. HTMLCollection
- DOM 프로퍼티에 의해 반환
- 동적이며, 실제 DOM 구조의 변경에 따라 자동으로 업데이트
- 배열 유사 객체
3. 함수의 arguments 객체
- 함수에 전달된 인수들의 컬렉션
- 모든
JavaScript 함수가 지님
- 함수의 인수를 배열 유사 객체로써 접근
4. 문자열
- 문자의 컬렉션
- 각 문자에 인덱스로 접근 가능
- 길이 속성 존재
5. TypedArray
- 이진 데이터를 처리하는 객체
- TypedArray의 인스턴스는 배열 유사 객체
- 각 요소에 인덱스로 접근 가능
NodeList vs HTMLCollection
