본문 바로가기

Javascript/기초부터 다시 시작

조건문 업그레이드

조건문

function isKoreanFood(food) {
	if (food === "불고기" || food === "비빔밥" || food === "떡볶이") {
		return true;
	}
	return false;
}

const food1 = isKoreanFood("불고기");
const food2 = isKoreanFood("파스타");
console.log(food1);
console.log(food2);

 

결과

 

하지만 한식의 종류가 많아지면 조건문이 너무 길어지게 됨

문자열로 이루어진 한식 중에 입력받은 파라미터가 존재하는 지 안하는 지만 확인하면 됨

 

 

코드 수정

 

(food)라는 파라미터가 배열 안에 존재하면 true 존재하지 않으면 false 리턴하는 배열의 메서드(include) 사용

function isKoreanFood(food) {
	if (["불고기", "떡볶이", "비빔밥"].includes(food)) {
		return true;
	}
	return false;
}

const food1 = isKoreanFood("불고기");
const food2 = isKoreanFood("파스타");
console.log(food1);
console.log(food2);

 

결과

 


주어진 값에 각각 다른 결과물을 리턴하는 함수 (식사 유형별 추천음식 리턴)

const getMeal = (mealType) => {
	if (mealType === "한식") return "불고기";
	if (mealType === "양식") return "파스타";
	if (mealType === "중식") return "멘보샤";
	if (mealType === "일식") return "초밥";
	return "굶기";
};

console.log(getMeal("한식"));
console.log(getMeal("중식"));
console.log(getMeal("양식"));
console.log(getMeal("일식"));

 

결과

 

 

그러나 식사 유형이 많아지면 .....

객체에 프로퍼티에 접근하는 괄호표기법으로 해결 가능

const meal = {
	한식: "불고기",
	중식: "멘보샤",
	일식: "초밥",
	양식: "스테이크",
	인도식: "카레"
};

const getMeal = (mealType) => {
	return meal[mealType] || "굶기";
};

console.log(getMeal("중식"));
console.log(getMeal());

 

결과

'Javascript > 기초부터 다시 시작' 카테고리의 다른 글

spread 연산자  (0) 2023.04.03
비구조화 할당  (0) 2023.04.03
삼항연산자  (0) 2023.03.22
배열  (0) 2023.03.20
콜백함수  (0) 2023.03.17