[javascript] 자바스크립트 배열 필터링 결과를 조건에 따라 다른 동작 수행하기
배열을 필터링하여 조건에 따라 다른 동작을 수행하는 것은 자바스크립트에서 매우 일반적입니다. 이를 위해 일반적으로 Array.prototype.filter
메서드를 사용하여 원하는 조건을 설정하고, 그 결과에 따라 if-else
문을 활용하여 다양한 작업을 수행할 수 있습니다.
배열 필터링과 각 요소에 대한 동작 수행하기
const numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
// 필터링된 결과에 따라 다른 동작 수행하기
const filtered = numbers.filter((number) => {
if (number % 2 === 0) {
// 짝수인 경우
console.log(`${number}는 짝수입니다.`);
return true; // 필터링된 결과에 포함
} else {
// 홀수인 경우
console.log(`${number}는 홀수입니다.`);
return false; // 필터링된 결과에 포함되지 않음
}
});
// 필터링된 배열 출력
console.log(filtered);
이 예제에서는 numbers
배열의 요소를 필터링하여 짝수와 홀수를 구분하고, 각 요소에 대해 다른 동작을 수행합니다.
배열 필터링 결과에 따른 다양한 동작 수행하기
const products = [
{ name: '티셔츠', price: 15 },
{ name: '바지', price: 25 },
{ name: '신발', price: 50 },
{ name: '모자', price: 10 }
];
// 필터링된 결과에 따라 다른 동작 수행하기
const affordableProducts = products.filter((product) => {
if (product.price <= 20) {
// 가격이 20이하인 경우
console.log(`${product.name}는 저렴한 상품입니다.`);
return true; // 필터링된 결과에 포함
} else {
// 가격이 20초과인 경우
console.log(`${product.name}는 비싼 상품입니다.`);
return false; // 필터링된 결과에 포함되지 않음
}
});
// 필터링된 배열 출력
console.log(affordableProducts);
이 예제에서는 products
배열의 요소를 필터링하여 가격이 20이하인 상품과 가격이 20초과인 상품을 구분하고, 이에 따라 다른 동작을 수행합니다.
자바스크립트를 사용하여 배열을 필터링하고 그 결과에 따라 다양한 동작을 수행하는 것은 코드를 보다 유연하게 작성할 수 있도록 도와줍니다.
링크: MDN Web Docs - Array.prototype.filter