반응형
사과바구니를 가져왔다
const appleBasket = [{
color: 'green',
sweet: 13
},
{
color: 'red',
sweet: 14
},
{
color: 'red',
sweet: 11
},
{
color: 'green',
sweet: 6
},
{
color: 'green',
sweet: 7
},
{
color: 'green',
sweet: 9
},
];
문제.
/*
사과중에 녹색이면서 당도가 9인 사과만 선별하여 // filtering 1
"이 사과는 xx색이며 당도는 xxx입니다" // mapping 2
라는 문자열이 들어있는 배열을 만들어tj
콘솔에 반복출력해주세요. // forEach
*/
const filteredApples
= appleBasket.filter(apple =>
apple.color === 'green' && apple.sweet >= 9);
// console.log(filteredApples);
const mappedApples = filteredApples.map(apple => {
const convertedColor = apple.color === 'green' ? '초록' : '빨강';
return `이 사과는 ${convertedColor}색이며 당도는 ${apple.sweet}입니다.`;
});
console.log(mappedApples);
mappedApples.forEach(apple => console.log(apple));
이렇게 구현 할 수 있다. 강사님 말로는 요즘은 함수형 프로그래밍이 대세라던데
// 이걸 다 합치면 // 함수형 프로그래밍 //
appleBasket
.filter(apple => apple.color === 'green' && apple.sweet >= 9)
.map(apple => {
const covertedColor = apple.color === 'green' ? '초록' : '빨강';
return `이 사과는 ${covertedColor}색이며 당도는 ${apple.sweet}입니다.`;
})
.forEach(apple => console.log(apple));
이렇게 깔끔정리가 가능하다고 한다.
반응형