배열이란?
배열은 여러 개의 값을 순차적으로 나열한 자료구조다. 배열은 객체 타입이지만 일반 객체와는 다르게 length 프로퍼티와 값의 순서를 가진다. 배열은 객체이기 때문에 delete 연산자를 사용할 수 있다.
희소배열은 배열의 요소가 연속적으로 이어져있지 않은 배열을 말한다. 희소 배열의 length 와 배열 요소의 개수는 일치하지 않는다. 요소가 연속적으로 이어진 배열을 밀집 배열이라고 한다.
배열 메서드에는 원본 배열을 변경하는 메서드인 mutator method와 원본 배열을 변경하지 않고 새로운 배열을 생성하는 메서드인 accessor method가 있다. 되도록이면 accessor method를 사용하는 것이 좋다.
push, shift, unshift 메서드는 모두 원본 배열을 변경한다. 이것들보다 ES6의 스프레드 문법을 사용하는 편이 좋다.
const arr = [1, 2];
const newArr = [ ...arr, 3];
고차함수란?
고차함수는 함수를 인수로 전달받거나 함수를 반환하는 함수를 가리킨다. 불변성을 지향하는 함수형 프로그래밍에 기반을 두고 있다.
forEach 메서드는 for문을 대체할 수 있고 가독성이 더 좋다. for 문과 달리 메서드 자신 내부에서 반복문을 실행한다. 원본 배열을 변경하지 않으나 콜백 함수를 통해서 원본을 변경할 수 있다.
some 메서드는 빈 배열일 경우 항상 false를 반환한다. 반면, every 메서드는 빈 배열일 경우 항상 true를 반환한다.
'Today I Learned' 카테고리의 다른 글
모던 자바스크립트 Deep Dive 29장 Math (0) | 2022.04.19 |
---|---|
모던 자바스크립트 Deep Dive 28장 Number (0) | 2022.04.16 |
모던 자바스크립트 Deep Dive 26장 ES6 함수의 추가 기능 (0) | 2022.04.13 |
모던 자바스크립트 Deep Dive 25장 클래스 (0) | 2022.04.03 |
모던 자바스크립트 Deep Dive 24장 클로저 (0) | 2022.04.03 |