Javascript

자바스크립트 메서드와 원본 데이터 유지

shuai 2024. 12. 31. 16:16

자바스크립트 메서드

자바스크립트로 기능을 구현하다보면 여러 메서드들을 많이 쓰게 된다. 이번 기회에 자세히 다시 한번 알아보았다. map(), filter()는 자주 사용했는데, 나머지 메서드들은 새로 알게 되었다.

 

map() 메서드는 배열 내의 모든 요소 각각에 대하여 주어진 함수를 호출한 결과를 모아 새로운 배열을 반환한다.

 

filter() 메서드는 주어진 배열의 일부에 대한 얕은 복사본을 생성하고, 주어진 배열에서 제공된 함수에 의해 구현된 테스트를 통과한 요소만 필터링한다.

 

reduce() 메서드는 배열의 각 요소에 대해 주어진 리듀서 (reducer) 함수를 실행하고, 하나의 결과값을 반환한다.

 

some() 메서드는 배열 안의 어떤 요소라도 주어진 판별 함수를 적어도 하나라도 통과하는지 테스트한다. true, false 둘 중 하나를 반환한다.

 

every() 메서드는 배열의 모든 요소가 제공된 함수로 구현된 테스트를 통과하는지 테스트한다. true, false 둘 중 하나를 반환한다.

 

데이터의 원본 유지

위에서 설명한 메서드들은 모두 원본 배열을 변경하지 않으면서 새로운 배열을 반환한다. 그렇다면 왜 원본 데이터를 유지하는 것이 좋을까? side effect를 줄이기 위해서이다. 답은 생각보다 간단하지만, 왜 원본 데이터를 유지하는 것이 좋은지 생각하면서 로직을 구현한다면 아무 생각 없이 코딩하는 것보다 좋은 결과를 도출할 수 있을 것이다.