1. 조건문
1) if-else문
자바스크립트에서 if-else문은 true일때 if의 블록을 실행하고, false일때 else의 블록을 실행하는 조건문입니다.
그래서 조건은 true인지 false인지만 확인합니다.
예제를 통해 자세히 알아보겠습니다.
let result = true;
//result = false;
//실행문이 한줄밖에 없을 경우 실행블록({})을 생략가능
if (result) console.log('참입니다.'); //출력
else console.log("거짓입니다.") //출력안됨
위 코드를 실행해보면 참입니다. 가 출력되는 것을 볼 수 있습니다. result 변수를 false로 변경하면 거짓입니다가 출력됩니다.
실행문이 두줄이상일 경우에는 아래처럼 실행블록을 반드시 넣어야합니다.
let result = true;
//result = false;
if (result){
console.log("이 문장은");
console.log('참입니다.');
}
else{
console.log("이 문장은");
console.log("거짓입니다.");
}
2) switch문
switch문은 if-else문과 다르게 경우에 수에 따라 다른 문장을 실행하는 것입니다.
그런데 switch문에서 주의해야할 점은 break를 적절한 곳에 넣어줘야 한다는 것입니다.
const fingersOut = 2;
switch (fingersOut) {
// 순서 상관없음
case 2:
console.log('가위'); //break가 없으면 아래가 모두 실행됨
break;
case 0:
console.log('바위');
break;
case 5:
console.log('보');
break;
default: //default는 케이스가 없는 경우 실행
console.log('무효');
}
switch문의 특성을 사용하여 아래처럼 코드를 짜는 것도 가능합니다.
const month = 1;
let season = '';
switch (month) {
case 1: case 2: case 3:
season = '1분기'; break; //1,2,3은 1분기
case 4: case 5: case 6:
season = '2분기'; break; //4,5,6은 2분기
case 7: case 8: case 9:
season = '3분기'; break; //7,8,9는 3분기
case 10: case 11: case 12:
season = '4분기'; break; //10,11,12는 4분기
default:
season = '잘못된 월입니다.';
}
console.log(season); //1분기
자바스크립트에서 switch문은 객체를 사용하여 실행하는 것도 가능합니다.
const direction = 'north'
const directionKor = {
north: '북',
south: '남',
east: '동',
west: '서'
}[direction] ?? '무효'
console.log(directionKor); // 북
2. 반복문
1) for문
1] 기본 사용방법
for문의 기본 사용방법은 아래와 같습니다.
for(let 변수=초기화값; 변수의 범위;변수의 증감){
//실행문
}
예제를 통해서 확인해보겠습니다.
for (let i = 0; i < 5; i++) {
console.log(i);
}
//출력:
//0
//1
//2
//3
//4
//5
for (let i = 0; i < 5;) {
console.log(i++); //변수의 증감을 실행문에서 표현도 가능
}
//출력:
//0
//1
//2
//3
//4
//5
for (let i = 10; i >= 0; i-= 2) { //변수의 범위가 0보다 크거나 같을 때까지 2씩 감소
console.log(i);
}
//출력:
//10
//8
//6
//4
//2
//0
반복문을 중첩으로 사용하는 것도 가능합니다. 아래 예제는 중첩반복문에서 많이 사용하는 구구단 출력코드입니다.
for (let i = 1; i <= 9; i++) {
for (let j = 1; j <= 9; j++) {
console.log(`${i} X ${j} = ${i * j}`);
}
}
for문안에서 변수를 선언할 때 두개 이상의 변수를 사용하는 것도 가능합니다.
for (let x = 0, y = 10; x <= y; x++, y--) {
//x는 0, y는 10으로 초기화한 후 x값이 y값보다 작거나 같을때까지 x는 1씩 증가, y는 1씩 감소
console.log(x, y);
}
//출력:
//0 10
//1 9
//2 8
//3 7
//4 6
//5 5
for (
let x = true, y = 0, z = 0; //초기화부분
y * z < 10; //범위
x = !x, x ? y++ : z++ //증감
) {
console.log(y, z);
}
//출력:
//0 0
//0 1
//1 1
//1 2
//2 2
//2 3
//3 3
2] 객체를 이용한 for문
객체를 이용한 방법은 아래와 같습니다.
for(변수 in 객체){
//실행문
}
그런데 위에서 변수는 객체에서 key값을 반환합니다. 그리고 객체에서 key는 유일하므로 const로 선언하는 것이 좋습니다.
예제를 통해 살펴보겠습니다.
const lunch = {
name: '라면',
taste: '매운맛',
kilocalories: 500,
cold: false
}
for (const key in lunch) {
console.log(key, ':', lunch[key])
}
//출력:
//name : 라면
//taste : 매운맛
//kilocalories : 500
//cold : false
당연히 key의 변수명은 key라고 하지 않아도 됩니다.
3] 이터러블한 자료형에서의 for문
이터러블한 자료형이란 순서대로 나열가능한 자료형. 즉,인덱스가 있는 것을 의미합니다.
예컨대 리스트형은 [a,b,c,..] 등등으로 이터러블하며 문자열도 이터러블한 자료형이 됩니다.
왜냐하면 '안녕하세요'라는 문자열은 '안','녕','하','세','요'로 나열 가능합니다. 당연히 첫번째 인덱스의 값도 '안'이 됩니다.
//리스트
const list = [1, '가나다', false, null];
for (const item of list) {
console.log(item);
}
//출력:
//1
//가나다
//false
//null
문자열을 이용한 for문
for (const word of '안녕하세요') {
console.log(word);
}
//출력:
//안
//녕
//하
//세
//요
2) while, do while
while문과 do while문은 변수선언 키워드를 제외하고는 자바와 동일합니다.
따라서 아래 페이지에서 확인하시면 됩니다.
'JAVASCRIPT Programming > Javascript' 카테고리의 다른 글
[JavaScript] 객체 (0) | 2024.08.06 |
---|---|
[JavaScript] 일급 객체 (0) | 2024.07.25 |
[JavaScript] 함수 (0) | 2024.07.21 |
[JavaScript] 블록과 스코프 (0) | 2024.07.18 |
[JavaScript] 자료형과 연산자 (0) | 2024.07.16 |