javascript

if else 문 개념 정리

노래하는 마케터 2020. 9. 11. 17:36
728x90

* if else문의 구조 -- (1)
if (조건) { A } else { B }
* if else문의 설명

  1. 키워드 if 뒤에 괄호가 옵니다.
  2. 시험할 조건은 괄호 안에 위치합니다. (전형적으로 "이 값이 다른 값보다 큰지", "이 값이 존재하는지") 이 조건은 마지막 모듈에서 논의했던 비교연산자(comparison operators)를 사용할 것이고 true 나 false를 리턴합니다.
  3. 내부의 중괄호 안에 코드가 있습니다. — 이것은 우리가 좋아하는 코드일 수 있고, 조건이 true를 반환하는 경우에만 실행됩니다.
  4. 키워드 else.
  5. 또 다른 중괄호 안에 더 많은 코드가 있습니다. — 이것은 우리가 좋아하는 코드 일 수 있고, 조건이 true가 아닌 경우에만 실행됩니다.

만약 조건이 true면, 코드 A를 실행하고, 아니면 코드 B를 실행한다.
그러나 else와 두 번째 중괄호를 포함하지 않아도 된다.
* if else문의 구조 -- (2)
if (조건) { A } B
여기서 조심 해야 할 점은 위의 경우, 코드의 두 번째 블록은 조건문에 의해서 제어되지 않습니다. 그래서 조건이 true나 false를 리턴하는 것에 관계없이 항상 동작합니다. 이것이 반드시 나쁜 것은 아니지만, 원하는 대로 되지 않을 수도 있습니다. 로직 설계 시 일반적으로는 코드의 한 블록이나 다른 블록이 실행되거나 둘 다 실행되지 않는 것을 원할 것입니다.
* if else문의 구조 -- (3)
if (조건) A else B
이것은 완벽하게 유효한 코드이지만, 사용하는 것을 추천하지 않습니다. 중괄호를 사용하여 코드를 구분하고, 여러 줄과 들여쓰기를 사용한다면, 코드를 쉽게 읽고, 진행되는 작업을 훨씬 쉽게 처리할 수 있습니다.

Simple Example)
function numberToString() {
var num1 = 1;
var num2 = 2;
var num3 = 3;
if(num1 == 1) {
num1 = num1.toString();
console.log("num1Type = " + typeof(num1) + ", num2Type = " + typeof(num2) + ", num3Type = " +
typeof(num3));
} else if(num2 == 2) {
num2toString = num2.toString();
console.log("num1Type = " + typeof(num1) + ", num2Type = " + typeof(num2) + ", num3Type = " +
typeof(num3));
} else if(num3 == 3) {
num3toString = num3.toString();
console.log("num1Type = " + typeof(num1) + ", num2Type = " + typeof(num2) + ", num3Type = " +
typeof(num3));
} else {
console.log("num1Type = " + typeof(num1) + ", num2Type = " + typeof(num2) + ", num3Type = " +
typeof(num3));
}
}
if() {...} block에서 테스트된 첫 번째를 제외하고, else if() {...}에서 조건은 테스트되는 방법에 유의하세요.
true인 조건이 없으면 else 조건문 안의 코드가 실행됩니다. 이 경우 아무것도 선택되지 않으면 예를 들어, 사용자가 처음에 선언한 변수의 타입을 출력하는 역할을 합니다.

728x90