이러한 메서드는 배열에만 있는 것이 아닙니다. 이 메서드들은 이터레이터(Iterator)라고 부르는 속성에 의존합니다. 그렇지만 직관적으로 배열에 가장 가깝게 연결되어 있습니다. 배열을 주의 깊게 공부하면 다른 데이터 구조에 대한 통찰도 많이 얻을 수 있습니다. 배열은 여우처럼 많은 것을 알고 있기 때문입니다.
이번 장을 통해 모던 자바스크립트의 배열이 그 어느 때보다 훌륭해졌다는 사실을 배우게 될 것입니다. 배열은 다양한 데이터 요구에 적합합니다. 이뿐만 아니라 흔히 사용되는 기능을 한 줄로 줄여주고, 동시에 미묘한 버그를 낳는 조작을 줄여주는 새로운 문법도 갖추고 있습니다. 같은 개념이 이후 팁에도 적용되기 때문에 집중해서 보는 것이 좋겠습니다.
이번 장에서는 먼저 데이터를 언제든지 배열로 변환하는 방법을 살펴봅니다. 객체처럼 다른 형태의 컬렉션을 필요에 따라 배열로 변경하는 방법도 같이 살펴볼 것입니다. 배열 내 특정 항목의 존재 여부를 확인하는 새로운 문법인 includes()
, 그리고 마침표 세 개(...)로 작성하는 가장 중요한 펼침 연산자에 대해 배울 것입니다. 펼침 연산자는 모던 자바스크립트에서 배열을 다루는 방법과 관련해 매우 중요하므로, 이어지는 팁 두 개에서 펼침 연산자를 이용할 때 배열을 다루는 방법이 어떻게 변화하는지를 살펴보겠습니다. 펼침 연산자는 이후 팁에도 자주 사용되므로 집중해서 보세요.
간단하고 예측 가능한 고슴도치의 방법을 따르면 코드를 읽기 좋게 만들 수 있습니다. 그렇지만 코드를 유연하게 하려면 배열이 데이터 구조를 넘나들어야 합니다. 양쪽의 균형을 맞추기는 쉽지 않지만 두 가지 모두 필요합니다. 배열을 확실히 이해하면 자바스크립트로 하는 모든 일이 한결 쉬워질 것입니다.
그러면 지금부터 다른 대부분의 컬렉션에서는 찾을 수 없는, 배열만이 제공하는 유연성을 살펴보겠습니다.