javascript 언어 및 이를 활용한 언어 환경에서 배열은 정말 자주 사용된다.
이때 자주 사용된다는 의미는 배열끼리 더하고 빼고 지지고 볶고를 모두 포함한 의미이다.
배열끼리 더하는 경우에, push
메서드, concat
메서드, unshift
메서드가 자주 사용된다.
기존 배열 뒤에 붙일 때 쓰이는 push
메서드와 concat
메서드를 비교해보자.
push
메서드는 배열의 끝에 하나 이상의 요소를 추가하고, 배열의 새로운 길이를 반환한다.
concat
메서드는 인자로 주어진 배열이나 값들을 기존 배열에 합쳐서 새 배열을 반환한다.
push
메서드는 return 값이 배열의 새로운 길이이고 기존 배열을 변경한다.
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const arr3 = arr1.push(arr2);
console.log(arr1); // [1, 2, 3, 4, 5, 6]
console.log(arr3); // 6
concat
메서드는 return 값이 추가된 새로운 배열이고 기존 배열을 변경하지 않는다.
const arr1 = [1, 2, 3];
const arr2 = [4, 5, 6];
const arr3 = arr1.concat(arr2);
console.log(arr1); // [1, 2, 3]
console.log(arr3); // [1, 2 ,3 ,4 ,5 ,6]
concat
메서드가 기존 배열과 새로운 배열을 더하려는 의도에 더 부합하는 메서드인 듯.push
메서드는 return 값이 새로운 배열의 길이라는 점,
concat
메서드의 return 값이 추가된 새로운 배열이라는 점
concat
메서드가 기존 배열을 변경하지 않는다는 점에서 concat
메서드 쓰자 !
뿅 !