: 주어진 조건에 따라서 애플리케이션을 다르게 동작하도록 하는것(Conditional statement)
if(boolean) {
alert. ('result : true');
}
-> 괄호 안은 조건문, 중괄호 안은 조건이 맞으면 실행되는 코드
-> boolean이 true면 다 실행이 되지만 false인 경우 중괄호 구간이 실행되지 않음
: if 조건문이 true라면 if의 중괄호 구간이 실행되고, false라면 else 이후의 중괄호 구간이 실행된다. 즉 else는 주어진 조건이 거짓일 때 실행할 구간을 정의하는 것
If(true) {
alert(1);
} else {
Alert(2);
}
결과값은 1
->if문이 참이면 else가 실행되지 않고 if문이 false인 경우 else가 실행됨
: 좀 더 다양한 케이스의 조건 검사 가능, if나 else와는 다르게 여러개가 올 수 있음
else if
의 모든 조건이 false라면 else가 실행됨. else는 생략 가능
If (조건1) {
조건1이 맞으면 이게 실행됨 ;
} else if (조건2) {
조건2가 맞으면 이게 실행 ;
} else if (조건3) {
조건3이 맞으면 이게 실행 ;
} else {
위 조건들이 다 안맞으면 이게 실행됨 ;
}
예를들면
If (false) {
alert(1);
} else if (false) {
alert(2);
} else if (true) {
alert(3);
} else {
alert(4)
}
-> 첫번째 if문은 false이기 때문에 넘어가고 두번째 else if문도 false기 때문에 지나치고 세번째 else if문이 true이기 때문에 결과값은 3
-> 만약 세번째 esle if 문도 false였다면 결과값은 4가 된다.
->❗️위에서부터 차례로 조건을 체크하기 때문에 조건문은 순서가 중요함!
(4)switch문
: switch문의 표현식을 평가하여 그 값과 일치하는 표현식을 갖는 case문으로 실행순서를 이동
switch(표션식) {
case 1:
switch 문의 표현식과 표현식1이 일치하면 실행될 문;
break;
case 2:
switch문의 표현식과 표현식2가 일치하면 실행될 문;
break;
dafault:
switch문의 표현식과 일치하는 표현식을 갖는 case문이 없을 때 실행될 문;
}
➡️불리언 값보다는 문자열, 숫자 값인 경우가 많다. -> 다양한 상황(case)에 따라 실행할 코드 블록을 결정할 때 사용
➡️break;
는 코드블록에서 탈출하는 역할을 수행 -> break문이 없다면 일치하더라도 실행 순서는 다음으로 계속 넘어감
➡️default문은 마지막에 위치하므로 실행이 종료되면 빠져나가므로 break문이 필요 없음
➡️여러개의 case문을 중복해서 사용할 수 있다.
➡️조건문은 조건문 안에 중첩되어 사용 가능
➡️prompt()
: 입력창이 존재해서 사용자에게 정보를 받아올 수 있음
사용자가 입력한 값을 가져와서 id 변수의 값으로 대입 -> API 또는 함수
➡️사용자가 입력한 값과 id값이 일치한지 확인후에 비밀번호가 일치하는지 확인
➡️id = prompt ( )
: 대입연산자
: 좌항과 우항이 모두 참일때 참이 된다(and 연산자) -> 조건 하나만 맞으면 되는것이 아니라 모두 충족해야 참이 된다.
➡️경기도에 살고 만24세여야 전체가 true가 된다. 만약 하나라도 틀리면 else로 넘어감.
: 좌우항 하나라도 맞으면 true가 되는 논리연산자(or연산자)
➡️부천, 안산, 시흥을 입력하면 true, 다른 값을 입력하면 else로 넘어감
➡️컴퓨터는 왼쪽부터 해석하지만 가독성을 위해 괄호를 묶는게 좋음
: 부정의 의미, boolean의 값을 역전시킴(not연산자)
(1)0, 1
관습적인 이유로 0은 false, 0이 아닌값은 true로 간주됨 -> 쓰지않는것이 좋음
(2)기타 false로 간주되는 데이터형
빈 문자열 -> false
Undefined
-> false
var a;
-> false
Null
-> false
NaN
-> false
Reference