개발/자바스크립트
JavaScript 배열 메소드 총정리
피터JK
2025. 1. 22. 17:22
728x90
JavaScript의 배열(Array)은 데이터를 다루는 데 있어 매우 강력한 기능을 제공합니다. 이 글에서는 자주 사용되는 배열 메소드들을 카테고리별로 정리해보았습니다.
1. 배열 수정 메소드
1.1 push()
- 배열의 끝에 요소를 추가합니다.
- 반환값: 배열의 새로운 길이.
const arr = [1, 2, 3];
arr.push(4);
console.log(arr); // [1, 2, 3, 4]
1.2 pop()
- 배열의 끝 요소를 제거하고 반환합니다.
- 반환값: 제거된 요소.
const arr = [1, 2, 3];
const removed = arr.pop();
console.log(removed); // 3
console.log(arr); // [1, 2]
1.3 unshift()
- 배열의 앞에 요소를 추가합니다.
- 반환값: 배열의 새로운 길이.
const arr = [1, 2, 3];
arr.unshift(0);
console.log(arr); // [0, 1, 2, 3]
1.4 shift()
- 배열의 첫 번째 요소를 제거하고 반환합니다.
- 반환값: 제거된 요소.
const arr = [1, 2, 3];
const removed = arr.shift();
console.log(removed); // 1
console.log(arr); // [2, 3]
1.5 splice()
- 배열의 요소를 추가, 제거, 또는 교체합니다.
- 반환값: 제거된 요소들의 배열.
const arr = [1, 2, 3, 4];
const removed = arr.splice(1, 2, 'a', 'b');
console.log(removed); // [2, 3]
console.log(arr); // [1, 'a', 'b', 4]
2. 배열 탐색 메소드
2.1 indexOf()
- 지정한 값의 첫 번째 인덱스를 반환합니다.
- 값이 없으면 -1 반환.
const arr = [1, 2, 3, 2];
console.log(arr.indexOf(2)); // 1
console.log(arr.indexOf(4)); // -1
2.2 lastIndexOf()
- 지정한 값의 마지막 인덱스를 반환합니다.
- 값이 없으면 -1 반환.
const arr = [1, 2, 3, 2];
console.log(arr.lastIndexOf(2)); // 3
2.3 includes()
- 배열에 특정 값이 포함되어 있는지를 확인합니다.
- 반환값: true 또는 false.
const arr = [1, 2, 3];
console.log(arr.includes(2)); // true
console.log(arr.includes(4)); // false
2.4 find()
- 조건을 만족하는 첫 번째 요소를 반환합니다.
- 조건에 맞는 요소가 없으면 undefined 반환.
const arr = [1, 2, 3, 4];
const found = arr.find(x => x > 2);
console.log(found); // 3
2.5 findIndex()
- 조건을 만족하는 첫 번째 요소의 인덱스를 반환합니다.
- 조건에 맞는 요소가 없으면 -1 반환.
const arr = [1, 2, 3, 4];
const index = arr.findIndex(x => x > 2);
console.log(index); // 2
2.6 some()
- 배열의 어떤 요소라도 조건을 만족하는지 확인합니다.
- 반환값: true 또는 false.
const arr = [1, 2, 3, 4];
const hasEven = arr.some(x => x % 2 === 0);
console.log(hasEven); // true
2.7 every()
- 배열의 모든 요소가 조건을 만족하는지 확인합니다.
- 반환값: true 또는 false.
const arr = [2, 4, 6];
const allEven = arr.every(x => x % 2 === 0);
console.log(allEven); // true
3. 배열 변환 메소드
3.1 map()
- 배열의 각 요소를 변환하여 새로운 배열을 생성합니다.
- 원본 배열은 변경되지 않습니다.
const arr = [1, 2, 3];
const newArr = arr.map(x => x * 2);
console.log(newArr); // [2, 4, 6]
3.2 filter()
- 조건에 맞는 요소만 추출하여 새로운 배열을 생성합니다.
const arr = [1, 2, 3, 4];
const filtered = arr.filter(x => x % 2 === 0);
console.log(filtered); // [2, 4]
3.3 reduce()
- 배열을 순회하며 하나의 값으로 축소합니다.
const arr = [1, 2, 3, 4];
const sum = arr.reduce((acc, curr) => acc + curr, 0);
console.log(sum); // 10
3.4 concat()
- 두 개 이상의 배열을 병합합니다.
- 원본 배열은 변경되지 않습니다.
const arr1 = [1, 2];
const arr2 = [3, 4];
const merged = arr1.concat(arr2);
console.log(merged); // [1, 2, 3, 4]
3.5 join()
- 배열의 모든 요소를 문자열로 결합합니다.
- 반환값: 결합된 문자열.
const arr = [1, 2, 3];
console.log(arr.join('-')); // "1-2-3"
4. 배열 정렬 및 순회 메소드
4.1 sort()
- 배열을 정렬합니다.
- 원본 배열이 변경됩니다.
const arr = [3, 1, 4, 2];
arr.sort();
console.log(arr); // [1, 2, 3, 4]
4.2 reverse()
- 배열의 순서를 뒤집습니다.
- 원본 배열이 변경됩니다.
const arr = [1, 2, 3];
arr.reverse();
console.log(arr); // [3, 2, 1]
4.3 forEach()
- 배열의 각 요소에 대해 콜백 함수를 실행합니다.
- 반환값은 없습니다.
const arr = [1, 2, 3];
arr.forEach(x => console.log(x));
5. 기타 메소드
5.1 slice()
- 배열의 일부를 추출하여 새로운 배열을 생성합니다.
- 원본 배열은 변경되지 않습니다.
const arr = [1, 2, 3, 4];
const sliced = arr.slice(1, 3);
console.log(sliced); // [2, 3]
5.2 length
- 배열의 길이를 반환하거나 설정합니다.
const arr = [1, 2, 3];
console.log(arr.length); // 3
728x90