seunghyun Note

8장 (제어문) 본문

스터디/모던자바스크립트 deep dive

8장 (제어문)

승숭슝현 2024. 1. 7. 21:39

제어문은 조건에 따라 코드 블록을 실행하거나 반복 실행할 때 사용한다.

8.1 블록문

// 블록문
{
  var foo = 10;
}

// 제어문
var x = 1;
if (x < 10) {
  x++;
}

// 함수 선언문
function sum(a, b) {
  return a + b;
}

8.2 조건문

  • 조건문은 주어진 조건식의 평가 결과에 따라 코드 블록의 실행을 결정한다.

8.2.1 if... else 문 - 많이 사용하는 if 문

var num = 2;
var kind;

// if 문
if (num > 0) {
  kind = '양수'; // 음수를 구별할 수 없다
}
console.log(kind); // 양수

// if...else 문
if (num > 0) {
  kind = '양수';
} else {
  kind = '음수'; // 0은 음수가 아니다.
}
console.log(kind); // 양수

// if...else if 문
if (num > 0) {
  kind = '양수';
} else if (num < 0) {
  kind = '음수';
} else {
  kind = '영';
}
console.log(kind); // 양수

8.2.1 switch 문

  • 비슷.. 깔끔
// 월을 영어로 변환한다. (11 → 'November')
var month = 11;
var monthName;

switch (month) {
  case 1: monthName = 'January';
  case 2: monthName = 'February';
  case 3: monthName = 'March';
  case 4: monthName = 'April';
  case 5: monthName = 'May';
  case 6: monthName = 'June';
  case 7: monthName = 'July';
  case 8: monthName = 'August';
  case 9: monthName = 'September';
  case 10: monthName = 'October';
  case 11: monthName = 'November';
  case 12: monthName = 'December';
  default: monthName = 'Invalid month';
}

console.log(monthName); // Invalid month

8.3 반복문

8.3.1 for 문

for(변수 선언문 또는 할당문; 조건식; 증감식){
    조건식이 참인 경우 반복 실행될 문;
}

for (var i = 0; i < 2; i++) {
  console.log(i);
}```

<h3>8.3.2 whie 문</h2>

```jsx
var count = 0;

// 무한루프
while (true) {
  console.log(count);
  count++;
  // count가 3이면 코드 블록을 탈출한다.
  if (count === 3) break;
} // 0 1 2

8.4 break 문

  • 탈출하자!
if (true) {
  break; // Uncaught SyntaxError: Illegal break statement
}

8.5 continue 문

// continue 문을 사용하지 않으면 if 문 내에 코드를 작성해야 한다.
for (var i = 0; i < string.length; i++) {
  // 'l'이면 카운트를 증가시킨다.
  if (string[i] === search) {
    count++;
    // code
    // code
    // code
  }
}

// continue 문을 사용하면 if 문 밖에 코드를 작성할 수 있다.
for (var i = 0; i < string.length; i++) {
  // 'l'이 아니면 카운트를 증가시키지 않는다.
  if (string[i] !== search) continue;

  count++;
  // code
  // code
  // code
}
728x90

'스터디 > 모던자바스크립트 deep dive' 카테고리의 다른 글

10장(객체 리터럴)  (0) 2024.01.07
9장 (타입 변환과 단축 평가)  (0) 2024.01.07
7장 (연산자)  (1) 2024.01.07
6장 (데이터 타입)  (1) 2024.01.07
5장 (표현식과 문)  (0) 2024.01.07