12345를 foreach로 출력해라
const arr = [1, 2, 3, 4, 5];
const result = arr.forEach(itm => {
console.log(itm);
});
이거함 찍어봐
const arr = [1, 2, 3, 4, 5];
// 현존하는 함수를 인자로 - 💡 결과 살펴볼 것
arr.forEach(console.log);
이거함 찍어봐
const arr = [10, 20, 30, 40, 50];
// 콜백함수의 인자가 둘일 때
arr.forEach((itm, idx) => {
console.log(itm, idx);
});
const logWithIndex = (itm, idx) => {
console.log(`[${idx}]: ${itm}`);
}
arr.forEach(logWithIndex);
이게나오게 해봐라
const orgArr = [
{ name: '사과', cat: '과일', price: 3000 },
{ name: '오이', cat: '채소', price: 1500 },
{ name: '당근', cat: '채소', price: 2000 },
{ name: '살구', cat: '과일', price: 2500 },
{ name: '피망', cat: '채소', price: 2500 },
{ name: '딸기', cat: '과일', price: 5000 }
];
const arr1 = orgArr.map(itm => {
// 💡 블록 안에서는 return 문 필요함
return {
name: itm.name,
cat: itm.cat
}
});
console.log(arr1);
const joined = orgArr
.map(({name, cat, price}, idx) => {
return `${idx + 1}: [${cat[0]}] ${name}: ${price}원`
})
.join('\n - - - - - - - - - \n');
console.log(joined);
const joined = orgArr
.map(({name, cat, price}, idx) => {
return `${idx + 1}: [${cat[0]}] ${name}: ${price}원`
})
.join('\n - - - - - - - - - \n');
console.log(joined);
이 결과가 나오도록 해라
const arr = [
{ name: '사과', cat: '과일', price: 3000 },
{ name: '오이', cat: '채소', price: 1500 },
{ name: '당근', cat: '채소', price: 2000 },
{ name: '살구', cat: '과일', price: 2500 },
{ name: '피망', cat: '채소', price: 3500 },
{ name: '딸기', cat: '과일', price: 5000 }
];
console.log(
arr
.sort((a, b) => {
if (a.cat !== b.cat) {
return a.cat > b.cat ? 1 : -1;
}
return a.price > b.price ? 1 : -1;
})
.map(({name, cat, price}, idx) => {
return `${idx + 1}: [${cat[0]}] ${name}: ${price}원`
})
.join('\n - - - - - - - - - \n')
);
이게 나오게 해라
const arr = [1, 2, 3, 4, 5];
// 💡 한 단계만 펼침
console.log(
arr.flatMap(i => [i, [i], [[i]]])
)
const word = '하나 둘 셋 넷 다섯 여섯 일곱 여덟 아홉 열';
console.log(
word
.split(' ')
.flatMap(i => i.split(''))
);
ㅣ게 나오게 해라
const arr = [
{ name: '사과', cat: '과일', price: 3000 },
{ name: '오이', cat: '채소', price: 1500 },
{ name: '당근', cat: '채소', price: 2000 },
{ name: '살구', cat: '과일', price: 2500 },
{ name: '피망', cat: '채소', price: 3500 },
{ name: '딸기', cat: '과일', price: 5000 }
];
const isCheapFruit = i => {
return i.cat === '과일' && i.price < 3000;
}
console.log(
arr.find(({cat}) => cat === '채소').name,
arr.findLast(isCheapFruit).name
);
const arr = [
{ name: '사과', cat: '과일', price: 3000 },
{ name: '오이', cat: '채소', price: 1500 },
{ name: '당근', cat: '채소', price: 2000 },
{ name: '살구', cat: '과일', price: 2500 },
{ name: '피망', cat: '채소', price: 3500 },
{ name: '딸기', cat: '과일', price: 5000 }
];
['과일', '채소'].forEach(category => {
console.log(
`${category}의 가격의 합:`,
arr
.filter(({cat}) => cat === category)
.map(({price}) => price)
.reduce((prev, curr) => prev + curr)
);
});
댓글 영역