front-end/JavaScript
Map, Filter 함수
Hoon0211
2023. 8. 10. 09:06
728x90
1. map() 함수
- 배열의 내장 함수
- 반복 되는 컴포넌트를 렌더링 하기 위해 사용
- 주어진 함수를 호출한 결과를 모아서 새로운 배열을 생성한다.
- 배열이름.map(콜백함수)
let teacherList = ['AAA', 'BBB', 'CCC', 'DDD']
let teacherRender = teacherList.map(item => <li>{item}</li>)
// 일반적인 case
console.log(teacherList[0]+"님")
// map 함수
let newList = teacherList.map(item => item+'님')
console.log(newList)
2. Filter 함수
- 배열의 각 요소에 대해서 주어진 함수의 결과 값이 ture인 요소들만 모아서 새로운 배열로 반환하는 함수
- find의 경우 만족 하는 첫 요소를 반환 하지만 filter의 경우 만족하는 모든 요소를 반환
const words = ['samsung', 'lg', 'apple', 'kia', 'hyundai'];
const result = words.filter(word => word.length > 5);
console.log(result);
// ["samsung", "hyundai"]
- filter()을 활용한 검색 예시
noteList={noteList.filter((note) =>
note.text.toLowerCase().includes(searchText)
)}
- noteList에서 각 노트의 텍스트를 searchText와 비교하여, 포함된 노트만을 남긴 새로운 배열을 생성
- note.text.toLowerCase().includes(searchText)
- note.text : 현재 노트의 텍스트 내용을 의미
- .toLowerCase() : 문자열을 소문자로 변환하는 메소드
- .includes(searchText) : searchText 내용이 포함되어 있는지 확인하는 메소드
3. 참고 사이트
[Javascript] 15가지 유용한 map, reduce, filter
아래 글을 번역 및 요약한 글.
dongmin-jang.medium.com
728x90