profile Archive Of Records keep studying

JavaScript 제어문 (1) 조건문 - switch~case문 예제

» JavaScript

· switch~case문 예제


1) 원하는 사이트 입력 후 해당 사이트로 이동

let site = prompt('네이버, 구글, 다음 중 원하는 사이트를 입력해 주세요.');
let url;

switch(site) {
    case '네이버':
    	// window.open("about:blank").location.href = "https://www.naver.com"; - 방법 1
        url = "https://www.naver.com"; // - 방법 2
        break;
    case '구글':
    	// window.open("about:blank").location.href = "https://www.google.com";
        url = "https://www.google.com";
        break;
    case '다음':
    	// window.open("about:blank").location.href = "https://www.daum.net";
        url = "https://www.daum.net";
        break;
    default :
    	alert('제시된 사이트만 입력해 주세요.');
}

if(url) { // url 데이터가 있는 경우만 실행 - 방법 2
	window.open("about:blank").location.href = url;
}

// window.location.href = ""; 사이트 이동
// window.open("about:blank").location.href = ""; 새 창으로 사이트 이동


2) 1~4번까지의 번호를 입력하면 해당되는 번호의 이미지 출력 / 다른 번호를 선택하면 ‘1~4번까지만 선택해 주세요.’ 출력

let num = prompt('1~4번까지의 번호 중 마음에 드는 번호를 입력해 주세요.');
num = Number(num);

switch(num) {
    case 1:
    	document.body.innerHTML = '<img src="img1.jpg" alt="image 1">';
        break;
    case 1:
    	document.body.innerHTML = '<img src="img2.jpg" alt="image 2">';
        break;
    case 1:
    	document.body.innerHTML = '<img src="img3.jpg" alt="image 3">';
        break;
    case 1:
    	document.body.innerHTML = '<img src="img4.jpg" alt="image 4">';
        break;
    default:
    	alert('1~4번까지만 선택해 주세요.');
        window.location.reload();
}


3) 입력 받은 값이 홀수인 경우 ‘입력한 값 ..는/은 홀수입니다.’ / 짝수인 경우 ‘입력한 값 ..는/은 짝수입니다.’ 출력

let num = prompt('숫자를 입력해 주세요.');

switch(num % 2) { // 문자열이지만 식을 통해 자동으로 숫자로 변환되어 연산 -> 숫자형 데이터
    	case 0: // 입력 받은 값이 짝수인 경우
    		alert('입력한 값 ' + num + '은 짝수입니다.');
    		break;
    	case 1: // 입력 받은 값이 홀수인 경우
    		alert('입력한 값 ' + num + '은 홀수입니다.');
    	default:
		alert('숫자로만 입력해 주세요.');
}


4) 아메리카노: 10000원, 카페라테: 16000원, 카페모카: 17000원, 바닐라라테: 20000원일 때 입력 받은 커피명을 통해 ‘주문한 ..은/는 ..원입니다.’ 출력

let coffee = prompt('아메리카노, 카페라테, 카페모카, 바닐라라테 중 하나를 입력해 주세요.');
let price = ""; // 변수 초기화

switch(coffee) {
    case '아메리카노':
    	// document.write('주문한 + coffee + '는/은 10000원입니다.');
        price = 10000;
        break;
    case '카페라테':
        price = 16000;
        break;
    case '카페모카':
        price = 17000;
        break;
    case '바닐라라테':
        price = 20000;
        break;
    default:
    	alert('적혀 있는 메뉴 중에서 입력해 주세요.');
}

document.write.innerHTML = '<h1>주문한 ' + coffee + '는/은 ' + price + '원입니다.</h1>';


5) ID는 abc, 비밀번호는 1234를 입력 받아 참인 경우 비밀번호를 입력 받고, 비밀번호도 참인 경우 ‘로그인되었습니다.’ 출력

let id = "abc", pw = 1234;
let user_id = prompt('아이디를 입력해 주세요.', '여기에 입력해 주세요.');

switch(id === user_id) {
    case true:
    	let user_pw = prompt('비밀번호를 입력해 주세요.', '여기에 입력해 주세요.');
        user_pw = Number(user_pw);
        switch(user_pw) {
        	case 1234:
            	alert('로그인되었습니다.');
                break;
            default:
            	alert('비밀번호가 일치하지 않습니다.');
        }
        break; // 비교값이 실행되면 다음을 읽지 않고 구문을 빠져나옴
    default:
    	alert('아이디가 일치하지 않습니다.');
}


6) 요일을 알려 주는 프로그램

var day,
    week = new Date().getDay(); // 0(일요일)~6(토요일)

switch(week) {
	case 0:
		day = "일요일";
		break;
	case 1:
		day = "월요일";
		break;
	case 2:
		day = "화요일";
		break;
	case 3:
		day = "수요일";
		break;
	case 4:
		day = "목요일";
		break;
	case 5:
		day = "금요일";
		break;
	case 6:
		day = "토요일";
		break;
}

document.write('<h1>오늘은 ' + day + '입니다.</h1>');


7) 요일별 일정을 알려 주는 프로그램 (월, 화요일: HTML5 / 수, 목요일: 자바스크립트 / 금, 토요일: 영어 학습 / 일요일: 수영)

var work;
var week = new Date().getDay();

switch(week) {
    case 0:
    	work = '수영';
        break;
    case 1:
    case 2:
    	work = 'HTML5';
        break;
    case 3:
    case 4:
    	work = '자바스크립트';
    case 5:
    case 6:
    	work = '영어 학습';
        break;
}

document.write('<h1>오늘은 ' + work + ' 일정이 있는 날입니다.<h1>');