and 첫번째 false 를 발견하는 즉시 평가를 멈춤
(스티브는 남자고 한국인이며 군인) = 남자는 맞나 한국인 아니여서 fase
or 첫번째 true 를 발견 즉시 평가를 멈춤
(스티브는 남자고 한국인 이거나 군인) = true 출력
not true 와 false 를 반대로 바꺼줌
실제 코딩 작성시
{운전면허가 있고 시력이 좋은 여군} 을 찾아야 한다면
만약 데이터값이
운전면허 : 전체군인 80%
시력 : 전체군인의 60%
여군 : 전체군인의 7%
라고 한다면
-> 여군인데 시력좋고 면허있는 사람을 찾는게 제일 효율적
이미 여군에서 93% 걸르기 때문
|| (or) a||b ///a나 b중 트루가 있으면 트루
&& (and) a&&b ///a와 b 둘다 트루면 트루
! (not) !a /// a가 false 면 트루로 바뀜
예시
const name = "mike";
const age = 30;
if(name === 'mike' && age> 19){
console.log('통과')
} else {
console.log('돌아가')
}
//// 결과값은 통과
for(let i = 0; i<10; i++ ){ /// 첫번째 i = 초기값, 두번째 i = 조건 ,세번째 i = 코드실행 후 작업
//반복할코드
}
/// 작동되는 구조를 설명하자면 i=0
i가 10보다 작으므로
코드실행
i값 1증가
i=1
i가 10보다 작으므로
코드실행
i값 증가
반복
예시
for(let i = 0; i<10; i++ ){
console.log(i)
}
///출력값: 0,1,2 ...9
let i =0;
while(i<10){
//코드~~
}
/// 이대로 실행을 해버리면 결국 i는 계속 0이기때문에 브라우저가 맛이가버린다 그래서 값을 넣어줘야한다
while(i<10){
i++
}
---
let i =0;
while(i<10){
console.log(i);
i++;
}
///이렇게 실행시 i가 9가 될때까지 콘솔에찍히며 반복하고 끝나면 코드를 빠져나오게 된다.
let i =0;
do{
//코드~
i++;
}while ( i<10)
while(true){ ///while(true) 는 무한반복이니 조심해서 사용!
let answer = confirm("계속할까요?");
if(!answer){
break;
}
} ///출력값 : alert같은 창이 계속뜨고 취소버튼 누르기전까지 계속 나옴
for(let i=0; i<10; i++){
if(i%2){
continue
}
} 출력값 : 0,2,4,6,8
/// 해설 : 최초 i값에 0이 오면 2로 나누면 나머지는 0이기 컨티뉴를 만나지 않고 콘솔에 찍힘
다음 1이 주어지면 1을 2로 나누면 나머지가1 이기때문에 컨티뉴를 만나게 된다
그러면 로그에 찍히지 않고 다시 앞으로 반복
스위치문은 일반적으로 쓰이는 if else 문과 거의 형태가 유사하다.
switch문
switch(평가){
case A:
//A일때 코드
case B:
//B일때 코드
...
}
if else 문
if(평가 == A){
//A일때 코드
} else if(평가 == B){
//B일때 코드
}
//사과 : 100원
//바나나: 200원
//키위 : 300원
//멜론 : 400원
let fruit = prompt("무슨과일을 먹고싶나요?");
switch(fruit){
case 사과:
console.log('100원입니다.');
case 바나나:
console.log('200원입니다.');
case 멜론:
console.log('300원입니다.');
case 수박:
console.log('100원입니다.');
}
/// 실행 후 prompt 값에 바나나 를 입력하면
바나나 이후의 값이 전부 나옴 case문은 break가 없는 한 실행한 행 이후를 전부 나오게 하기때문
그래서 각각에 break 를 걸어줘야함
let fruit = prompt("무슨과일을 먹고싶나요?");
switch(fruit){
case 사과:
console.log('100원입니다.');
break;
case 바나나:
console.log('200원입니다.');
break
case 멜론:
console.log('300원입니다.');
break
case 수박:
console.log('100원입니다.');
break
}
/// 이후에 똑같이 실행하면 이번에는 선택한 변수명의 값만 출력이 된다.
///만약 변수명에 없는 과일을 선택한다면 아무것도 출력되지 않는다.
이경우에 if문은 else 를 사용했지만 switch 에서는 default 를 사용한다.
switch(fruit){
case 사과:
console.log('100원입니다.');
break;
case 바나나:
console.log('200원입니다.');
break
case 멜론:
console.log('300원입니다.');
break
case 수박:
console.log('300원입니다.');
break
} default:
console.log('그런 과일 없습니다.');
/// 그리고 수박과 멜론의 가격이 같은데 이러할때에는 합쳐줄수도 있다.
case 멜론:
case 수박:
console.log('300원입니다.');
break
///