처음부터 차근차근

조건문, 반복문 본문

Language/JavaScript

조건문, 반복문

HangJu_95 2023. 5. 24. 21:03
728x90

- 조건문

특정 조건을 만족하는 경우에만 코드를 실행할 수 있다.

1) 기본적인 if 문

let x = 10;

if (x > 0) { // 조건이 ture일 경우만 실행됨
    // main logic
  console.log("x는 양수입니다.");
}

2) if - else 문

조건문 if에 해당하지 않는다면, else 조건으로 이동.

x = -3;
if (x > 0){ // true일 경우
    // main logic #1
    console.log("x는 양수입니다.")
} else { // false
    //main logig #2
    console.log("x는 음수입니다.")
}

3) if - else if - else 문

조건문 if 와, 해당하지 않을 경우 else if, 그 다음에도 해당하지 않을 경우 else로 간 후 로직이 실행된다.

x = 10;

if (x < 0) {
    // main logic #1
    console.log("1")
} else if (x >= 0 && x < 5) {
    //main logic #2
    console.log("2")
} else {
    // main logic #3
    console.log("3")
}

4) switch 문

변수의 값에 따라 여러 개의 경우 중 하나를 선택해서 진행한다. 또한, case 후 break를 넣어주어야 해당 조건을 탈출한다.

// 4. switch
// 변수의 값에 따라 여러 개의 경우 중 하나를 선택
// default

let fruit = "사과";

switch (fruit) {
  case "사과":
    console.log("사과는 빨간색입니다.");
    break; // case를 탈출하기 위해 break를 넣어야 한다.
  case "바나나":
    console.log("바나나는 노란색입니다.");
    break;
  case "오렌지":
    console.log("오렌지는 주황색입니다.");
    break;
  default: // 아무것도 해당되지 않는 경우
    console.log("해당하는 과일이 없습니다.");
    break;
}

5) 조건문의 중첩

조건문은 아래와 같이 중첩이 가능하다.

let age = 20;
let gender = "여성";

if (age >= 18) {
  if (gender === "남성") {
    console.log("성인 남성입니다.");
  } else {
    console.log("성인 여성입니다.");
  }
} else {
  console.log("미성년자입니다.");
}

6) 조건부 실행

아래 예시를 확인 시, 변수 x가 양수인 경우에만 console.log가 실행된다. &&연산자를 사용하여 조건부 실행이 가능.

let x = 10;

// && and 조건
(x > 0) && console.log("x는 양수입니다.");

7) 삼항 연산자와 단축 평가

아래 예시를 확인시

// 삼항 연산자

// or 조건(||)
// 삼항 연산자와 단축평가

let y; // undefined
let z = y || 20; // y가 undefined이면 기본값으로 20을 입력해줘.

console.log(y);   // 20

y가 존재하지 않을 경우, || (or) 연산자를 사용하여, y가 존재하지 않는 경우 기본값을 20으로 진행할 수 있다.

 

8) falsy한 값과 truthy한 값

falsy한 값은 조건문을 만족시키지 못한다.

아래 예시 확인

// falsy한 값은 if 조건을 만족시키지 못한다.
// truthy한 값만 조건문을 실행
if (0) {
    console.log("이 코드는 실행되지 않습니다.");
  }
 
  if ("") {
    console.log("이 코드는 실행되지 않습니다.");
  }
 
  if (null) {
    console.log("이 코드는 실행되지 않습니다.");
  }
 
  if (undefined) {
    console.log("이 코드는 실행되지 않습니다.");
  }
 
  if (NaN) {
    console.log("이 코드는 실행되지 않습니다.");
  }
 
  if (false) {
    console.log("이 코드는 실행되지 않습니다.");
  }
 

 

- 반복문

반복문을 사용해 특정 코드를 반복해서 사용할 수 있다.

1) 기본적인 for문

for (초기값;조건식;증감식){}

for (let i = 0; i < 10; i++){
    console.log(i);
}

2) 배열과 함께 사용하는 for문

조건식을 length 메소드를 사용하여 배열의 요소 개수만큼 출력이 가능하다.

배열과 for문은 짝궁이다
const arr = [3,1,5,2,8]

for (let i = 0; i < arr.length; i++){
    console.log(i);
    console.log(arr[i]);
}

3) for..in 문

for..in 문을 사용하여 객체 person의 프로퍼티를 출력한다. 객체의 프로퍼티를 순서대로 접근이 가능

// for ~ in 문
// 객체의 속성을 출력하는 문법
let person = { name: "John", age: 30, gender: "male" };

// person[key]
for (let key in person) {
  console.log(key + ": " + person[key]);
}

4) while 문

while문은 조건식이 참인 경우에만 코드를 반복해서 실행한다.

// while

let i = 0;

while (i < 10) {
  console.log(i);
  i++;
}

 

5) do...while문

do..while문은 while문과 다르게, do를 먼저 한번 실행시키고, while은 조건에 따라 참인 경우에만 실행시켜준다.

do.. while 문
let i = 0;

do {
  console.log(i);
  i++;
} while (i < 10);

do를 먼저 한번 실행시키고, while은 이후 반복할 지 결정해준다.

 

6) break

break의 경우 if의 조건이 맞다면, 반복문을 종료한다.

break
그 자리에서 끝내버린다.

for (let i = 0; i < 10; i++) {
    if (i === 5) {
      break;
    }
    console.log(i);
  }

7) continue문

continue문은 해당 if문의 조건이 맞다면, 해당 루프는 건너뛰고 다음부터 진행한다.

// 5를 만났을 때는 continue를 만나 다음 for문으로 넘어감
// 그 다음 순서로 넘어간다

for (let i = 0; i < 10; i++) {
    if (i === 5) {
      continue;
    }
    console.log(i);
  }

 

 

추가적인 내용은 확인해보자.

https://developer.mozilla.org/ko/docs/Web/JavaScript/Guide/Loops_and_iteration#for...of_%EB%AC%B8

 

 

 

 

 

 

 

 

 

'Language > JavaScript' 카테고리의 다른 글

배열, 배열 메소드  (1) 2023.05.24
객체 메소드  (0) 2023.05.24
함수와 Scope  (0) 2023.05.22
연산자  (0) 2023.05.22
변수와 데이터 타입  (0) 2023.05.22