
코드 짜다보면 if문으로 처리하는 부분이 꽤나 많다.
중첩이고 가독성이고 뭐고 그냥 마구잡이식으로 처리하기 보다는 나중에 내 코드를 다시 보게될 나 또는 다른 사람을 위해 코드를 작성한다는 마음으로 이쁘게? if문을 작성하는 방법을 간단하게 정리하였다.
if ("오늘점심값" < 7000) {
if ("떡볶이") {
console.log("먹자");
if ("쌀국수") {
console.log("비싸");
}
...
}
} else {
console.log("안먹어");
}
if문 안에 if문이 중첩으로 3개이상 포함되게 되는 것을 Nesting if문이라고 한다 if문 사용시 항상 주의가 필요함 중첩되면 될수록 복잡해지기 쉬움 이런경우는 무조건 피하자
불가피하게 중첩으로 사용해야 할 경우에는 함수로 따로 빼서 사용하는 방안을 사용하도록
if ("떡볶이") {
console.log("좋지");
return;
}
if ("쌀국수") {
console.log("먹을까");
return;
}
if ("삼겹살") {
console.log("비싸..");
return;
}
otherFood();
상단에서 사전 조건을 판별하여 거짓이라면 예외 혹은 반환 처리하여 더 이상 다음 단계가 실행되지 않도록 사전에 차단하는 방식으로 가장 대표적인 if문의 처리 예다. 일할때는 특히 유효성 체크할때 자주 사용하게 되는것 같다.
if (isFood) {
// 음식이면
} else {
// 음식이 아니라면
}
if/else사용시 if 에는 가능한 긍정의 조건을 우선으로 비교하도록 한다.
// if (!(isPizza && !isHamburger)) {
// ...
// }
if (!isPizza || isHamburger) {
...
}
괄호없이 체크할 수 있는데 굳이 불필요한 괄호를 사용하는것은 무의미🚫
var age = 26;
var beverage = (age >= 21) ? "Beer" : "Juice";
console.log(beverage); // "Beer"
간단한 if/else문으로 끝낼 수 있으면 삼항연산자를 사용하여 더 깔끔하게 처리해주는 방법도 좋다고 생각한다. 다만 else if까지 늘어가면 더 혼란스러워지기만 해질 수도 있으니 비추
switch(food) {
case "떡볶이":
console.log("좋지");
case "쌀국수":
console.log("먹을까");
case "삼겹살":
console.log("비싸..");
default:
console.log('안먹어');
}
else if문으로 비교할 값이 많을 경우에는 switch문을 사용하는게 가독성측면에서 훨씬 좋다고 생각하여 switch로 처리될 수 있다면 대부분 사용하게 된다. 일하다보면 특히나 TYPE을 비교해야하는 경우가 다분한데 그럴때 정말 감사하다..👍👍👍