
자바 스크립트 내에서 filter는 '배열' 에서 사용되며, 어떠한 함수에서 만족하는 모든 '요소'를 모아 새 배열로 반환하게끔 된다.
let arr = [1, 3, 5, 7, 9, 11, 13, 'string']
let result = arr.filter((value) => value < 10)
console.log(result);
상기 코드를 확인시 let arr라고 선언을 한 배열이 있으며, filter를 이용하여 10미만의 값만 추출하고자 한다. 다만 추출하여 결과를 표시할 만한 곳이 필요하기에 result라는 변수를 생성하게 되었다. 차후 기존 배열에 .filter() 및 괄호 안 필터 조건이 되는 함수를 기재하면 사용이 가능하다.
필터를 사용하여 다음 배열에서 role이 'student'인 새로운 배열을 만들어 결과값을 내기.
let study = [
{ name : '김아무개', role : 'teacher' },
{ name : '박개발자', role : 'teacher' },
{ name : '정발산', role : 'student' },
{ name : '산기슭', role : 'teacher' },
{ name : '슭곰발', role : 'student' },
{ name : '발냄새', role : 'student' }
];
새로운 배열을 만들 수 있는 변수를 선언.
- let roleResult
배열에 'filter' method를 사용하기.
- let result = animals.filter()
filter 내부에 들어갈 조건을 삽입을 하기. 일반적으로 배열의 요소들은 {} 중괄호 안에 담겨있다.(property) 그렇기에 '.' 온점을 찍어 접근이 가능하다.
ex ) study.role ...
이후 조건함수를 기재하게 된다면은
let roleResult = study.filter((a) => a.role == 'student')
console.log(roleResult)