Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 보안
- 성능최적화
- typescript
- 개발공부
- wil
- FE
- 항해 플러스 프론트엔드
- javascript
- 성장일지
- webGPU
- 분기 회고
- React Query
- 테스트 코드
- React
- frontend
- 개발 공부
- 백준
- 프론트엔드
- 개발자
- 항해99
- 회고
- GPU
- 항해
- 항해플러스
- 항해 플러스
- rust
- 알고리즘
- 자바스크립트
- naver
- 리뷰
Archives
- Today
- Total
느릿늘있
[JS] 배열 탐색 : forEach, filter, find 본문
1. JS 배열 탐색 매서드
1. forEach : 배열의 각 요소들을 순회하면서 각 요소에 대해 콜백 함수를 실행한다.
2. filter : 배열의 각 요소들을 순회하면서 콜백함수의 조건에 대해 참인 값들로 새로운 배열을 반환한다.
3. find : 배열의 각 요소들을 순회하여 콜백함수의 조건에 대해 참인 첫번째 값을 반환한다.
2. 삽질 로그
[{i: 'unique key', ...}, ... ] 이와 같은 배열에서 특정 key에 대한 동작을 수행해야 할 때, forEach를 사용해서 value의 i가 해당 key 값일 때를 찾는 식으로 많이 개발한다. 하지만 이 경우 전체 배열을 무조건 한 번씩 순회하기 때문에 불필요한 탐색 횟수가 발생하게 된다. 이 때, 값이 unique 하다면 find를 사용하여 먼저 배열에서 값을 찾고 해당 값에 대해 동작을 수행하는 방식으로 코드를 개선할 수 있다.
forEach로 조건에 참인 경우 동작을 수행하는 것과 filter로 조건에 참인 배열을 생성 후 동작을 수행하는 것을 비교하면, filter를 썼을 때 배열을 반환함으로 메모리를 조금 더 소비하게 된다는 단점이 있지만 상대적으로 가독성이 더 낫다는 장점이 있다. 이 둘은 상황과 취향에 맞게 사용하면 될 듯 싶다.
'삽질로그' 카테고리의 다른 글
[ Vitest ] 테스트 코드 개선 경험 기록 (0) | 2024.11.04 |
---|---|
클로저를 활용한 grid rowid 구현 (0) | 2024.10.12 |
[개발 환경] WSL2 UNC 경로 에러 (0) | 2023.07.25 |
[SQL] 쿼리문 변경을 통한 성능 향상 경험 (0) | 2023.06.13 |
[nextJS] Google Map API 성능 최적화 경험 기록 (0) | 2023.05.07 |