코드 1번
const staff = [
{ name: "Wesly", position: "musician" },
{ name: "Davis", position: "engineer" },
];
function getMusicians(staff) {
return staff.filter((member) => member.position === "musician");
}
console.log(getMusicians(staff));
코드 2번
const staff = [
{ name: "Wesly", position: "musician" },
{ name: "Davis", position: "engineer" },
];
function getMusicians(staff) {
return staff.filter((member) => {
member.position === "musician";
});
}
console.log(getMusicians(staff));
코드 1번 같은 경우에는 staff 객체에 position키가 'musician’이라면 getMusicians(staff)함수에서
[ { name: 'Wesly', position: 'musician' } ]
을 리턴하고 코드 2번은 빈 배열 []
을 리턴합니다. 둘의 차이라면 staff.filter()메서드에 있는 콜백함수를 인자로 주었는데 콜백함수를 {}로 감쌌느냐 안감쌌느냐에 차이 뿐입니다. 왜 {}로 감싸지 않았을 때는 값을 리턴하는데 감쌌을 때는 빈 배열을 리턴할까요? () => {}
형식은 화살표 함수 형식이지 않나요?