1. Array.length Array.length는 배열의 길이보다는 배열의 마지막 인덱스를 의미하는 것에 가깝다. 배열의 길이를 0으로 설정하면 배열이 초기화된다. Array.length의 이러한 특성을 염두하고 주의해서 사용해야 한다. 2. 유사 배열 객체 유사배열객체는 말 그대로 '배열'이 아닌 '객체'이다. 그런데 아래 코드처럼, length 속성과 인덱싱된 요소를 가진 유사배열객체를 Array.from() 메서드를 사용하여 신기하게도 새로운 배열을 만드는 것을 볼 수 있다. 유사 배열 객체 (length 속성과 인덱싱 된 요소를 가진 객체) arguments나 webAPI의 node list 도 유사배열객체다. 유사배열객체는 배열의 고차함수 메서드를 사용할 수 없다. Array.from() 메서드를 통해 배열로 변환해야 배열의 고차함수 메서드를 사용할 수 있다.
배열 요소에 접근하기 arr[0], arr[1] 처럼 배열의 인덱스로 배열 요소에 접근하는 것은 해당 인덱스가 무엇을 의미하는지 알기 어려워 가독성이 떨어진다. 이를 해결하기 위해, 변수 선언 및 할당시 배열을 구조분해할당을 하여 해당 배열 요소의 역할을 명시적으로 표현할 수 있다. 또는, 함수에서 매개변수로 받을 때부터 구조분해할당을 하는 방법도 있다. dom에서 엘리먼트를 가져올 때 배열 형태로 가지고 오게 되는데 이런 경우에도 위 방법을 활용하면 좋다. 심지어 배열의 요소가 하나라고 하더라도 구조분해할당을 써서 배열 요소의 기능을 명시적으로 표현하는 것이 좋다.