filter 함수는 특정 조건을 만족하는 원소들만을 모아 새로운 배열을 만들때 사용하는 함수
const todos = [
{
id : 1,
text : '자바스크립트 입문',
done : true
},
{
id : 2,
text : '함수 배우기',
done : true
},
{
id : 3,
text : '객체와 배열 배우기',
done : true
},
{
id : 4,
text : '배열 내장함수 배우기',
done : false
}
];
위 예시에서 done이 false인 객체들만을 찾아 배열로 저장하고 싶으면
//생략...
const tasksNotDone = todos.filter(todo => todo.done === false);
console.log(taskNotDone); //[{id:4, text:"배열 내장함수 배우기", done: false}]
반대로 done이 true인 객체들만을 찾아 배열로 저장하고 싶으면
//생략...
const tasksNotDone = todos.filter(todo => todo.done === true);
console.log(taskNotDone);
//[{id:1, text:"자바스크립트 입문", done: true},
//{id:2, text:"함수 배우기", done: true},
//{id:3, text:"객체와 배열 배우기", done: true}]
그리고 위에서 done이 false인 객체들만을 찾아 배열로 저장하는 표현을 간단하게 나타내면
//생략...
const tasksNotDone = todos.filter(todo => !todo.done);
//생략...
이와 같이 나타낼 수도 있다!