웹표준,웹접근성(html, html5, css, css3, javascript, jQuery, jQueryMobile, snecha, senchaTouch, php, mobileWebApp)

조건문 if(), switch, 삼항연산자 본문

javascript/Tutorial

조건문 if(), switch, 삼항연산자

jokack01 2013. 11. 12. 15:31

조건문 

- 프로그램의 흐름을 변화시킬 수 있는 것으로 조건이 참이면 문장을 실행하고 그렇지 않으면 무시한다.


if 조건문

if( 불리언 표현식 ){

문장

}

문장이 한줄일 경우 중괄호를 생략할 수 있지만 여러 문장을 실행할 경우 중괄호로 감싸야 한다.


ex1) 숫자형 크기 비교

if(  100 > 10 ){

console.log('조건이 참일경우 화면에 출력 100은 10 보다 크다.');

}


ex2) 서로 같은 자료형인지 비교

var string = '문자열', // string 라는 변수에 문자값 참조

num = 22;  // num 이라는 변수에 숫자값을 참조

if( typeof(string) !== typeof(num)){ 

// typeof 연산자를 이용해 각 변수의 자료형을 알아오고 그 자료형이 같지 않은지 비교한다.

console.log('두개의 변수는 서로 다른 자료형이다.'); // 조건이 참이면 화면에 내용을 출력한다.

}



if else 조건문

- 조건이 두가지 이상일경우에 실행되는 조건문


ex1 ) 2가지 조건일 경우

// string  변수에 문자열로 33을 참조, num 변수에는 숫자값 22를 참조 시킨다.

var string = '33',

num = 22;

/* 

string의 값을 숫자로 변환하고 num 변수와 자료형이 같지 않은지 확인한다.

같지않다면 첫번째 if 문의 조건문을 실행하고

같다면 else문즤 조건문을 실행한다. 

*/

if( typeof(Number(string)) !== typeof(num)){

console.log('두개의 변수는 서로 다른 자료형이다.')

}else {

console.log('두개의 변수는 서로 같은 자료형이다.')

}


ex2 ) 3가지이상의 조건일 경우

// string  변수에 숫자값 33을 참조, num 변수에는 문자값 22를 참조 시킨다.

var string = 33,

num = '22';


// string 변수에 들어 있는 값이 문자이면 실행

if( typeof(string) === String ){

console.log('문자열');

// num 변수의 자료형이 숫자라면 실행

}else if( typeof(num) === Number ) {

console.log('숫자');

// 위의 두가지 조건이 다 맞지 않으면 실행

}else {

console.log('string = Number 객체입니다. : num = String 객체입니다..');

}



중첩 조건문

- 조건문안에 조건문을 이중으로 사용하는 것을 중첩이라고 표현한다. 조건문은 여러번 중첩해도 상관없다.


중첩조건문의 선언 예

if( 불리언 표현식 ){

if( 불리언 표현식 ){

실행 내용

}else {

실행내용

}

}else {

if( 불리언 표현식){

실행내용

}else {

실행내용

}

}


ex) 시간대별 인사말 출력

var date = new Date(), // 현재 날자와 시간값을 date 변수에 참조.

time = date.getHours(); // 현재 시간값만을 가져 온다. 


console.log(date); // 현재날자와 시간 출력.

console.log(time); // 현재시간값만 출력.


// 현재시간이 11보다 작으면 아침인사 출력

if(time < 11){

console.log('good morning');

// 현재 시간이 11보다는 클때 다음코드 실행

}else {

// 현재 시간이 11보다는 크면서 16보다는 작을때 점심 인사 출력

if(time < 16){

console.log('good afternoon');

// 위의 두가지 조건이 모두 참이 아닐때 저녁 인사 출력

}else {

console.log('good evening');

}

}

본인은 현재 오후 3시로 점심인사가 출력 되었다. 



switch 조건문 : 조건문의 기본형태

switch 조건문의 선언

switch (비교할 값){

case 값 : 

문장

break;

case 값 :

문장

break;

default :

문장

break;

}

- switch 조건문의 괄호안에는 비교할 값을 입력, 입력한 값을 기준으로 특정코드를 실행한다.

- case 문을 차례로 읽어가면서 조건이 맞는지 판별해서 실행한다. 

- 조건이 맞는 case 문이 없다면 default  가 실행되고 default 문은 생략가능하다.

break 키워드는 switch 문이나 반복문을 빠져 나갈때 사용한다. 


ex) 자료형 비교

// data 변수에 불린값으로 true 참조

var data = true;

// switch 문의 조건으로 date 변수의 자료형을 매개변수로 던진다. 

switch( typeof(data) ){

// 첫번째 조건 자료형이 문자열인지 판단

case String:

console.log('문자열');

break;

//두번째 조건 자료형이 숫자형인지 판단

case Number:

console.log('숫자형');

break;

// 세번째 위의 두조건 모두 거짓일 경우 디폴트값 출력

default:

console.log('불린값');

break;

}




삼항연산자 

- 조건문을 짧게 쓰고자 할때 쓰는 것으로 문장이 길면 코드가 너무 복잡해 알아보기 힘들기 때문에

한줄로 표시할 수 있을 때만 사용하는 것이 좋다. 


삼항연산자의 선언

(불리언 표현식) ? (참일때 실행할 문장) : (거짓일때 실행할 문장);


ex)

// i 와 j 라는 변수에 각 10 과 100 이란 숫자를 저장

var i = 10,

j = 100;

// i 가 j 보다 크다면 참이므로 앞에  문장 실행, 거짓이라면 뒤에 문장 실행

( i > j ) ? console.log('10은 100보다 크다') : console.log('10은 100보다 작다');

'javascript > Tutorial' 카테고리의 다른 글

함수(), function(){}  (0) 2013.11.26
반복문 (while, do while, for, for in)  (0) 2013.11.22
숫자와 문자열 형 변환, Number(), Strimg(), Boolean()  (0) 2013.11.04
undefined 자료형  (0) 2013.11.04
array(배열)  (1) 2013.11.04