1.연산자(Operator)
1. 산술 연산자
+, - , * , / , %, **
2. 비교 연산자
>, <, >=, <=, == , !=, ===, !==
===: 두 식의 값이 같고, 타입까지 같아야 한다.
!==: 두 식의 값이 다르고, 타입까지 달라야 함.
3 == 3 -> true
'3' == 3 -> true (자동 형변환이 되기 때문에)
'3' === 3 -> false
3. 대입 연산자
=. +=, -=, *=, /=, %=, **=
4. 증감 연산자
++변수, --변수, 변수++, 변수--
let num = 10
++num // 11 num = num + 1
--num // 10 num = num - 1
num++ // 11 num = num + 1
num-- // 10 num = num - 1
num = 10
result = ++num // num = 11, result = 11
result = num++ // result = 10, num = 11
> 연산자의 위치에 따라 실행 순서가 달라져서 값이 달라질 수 있다.
5. 논리 연산자
and, or, not
&& || !
6. 비트 연산자
&, |, !, ^, <<, >>
7. 삼항 연산자
변수 = 조건식 ? 반환값1 : 반환값2
조건식의 결과가 참이라면 반환값1이 변수에 저장,
조건식의 결과가 거짓이면 반환값2가 변수에 저장.
2. 제어문
1. 조건문
if문
switch문
2. 반복문
while문
for문
if문
if(조건식){
조건식의 결과가 ture일 때 실행할 문장;
...
}
if ~ else문
if(조건식){
조건식의 결과가 true일 때 실행할 문장;
}else{
조건식의 결과가 flase일 때 실행할 문장;
}
if~ else if ~ else문
if(조건식1){
조건식1의 결과가 true일 때 실행할 문장;
}else if(조건식2){
조건식2의 결과가 true일 때 실행할 문장;
}else{
모든 조건식의 결과가 flase일 때 실행할 문장;
}
문제. prompt로 나이를 입력받아 아래와 같이 결과를 출력하는 문서를 만들어보자.
20살(>19)을 입력하면 > 성인입니다.
15살(>11) > 청소년
7살(>2) > 어린이
그 외 > 유아
const age = Number(prompt('나이를 입력하세요'))
if(age>19){
console.log('성인입니다')
}else if(age>11){
console.log('청소년입니다')
}else if(age>2){
console.log('어린이입니다')
}else{
console.log('유아입니다')
}
switch 문
switch(변수 또는 값) {
case 값1:
변수와 값1이 같은 경우 실행할 문장;
...
break;
case 값2:
변수와 값2이 같은 경우 실행할 문장;
...
break;
case 값3:
변수와 값3이 같은 경우 실행할 문장;
...
break;
...
default:
변수와 모든 값이 다를 경우 실행할 문장;
}
break가 없다면 뒤에 문장을 검증하지 않고 (break를 만날때까지) 실행한다.
문제.
달(month)을 입력받아 해당 달의 마지막 일이 몇일인지 출력하는 문서를 작성해보자.
let month = prompt('달을 입력하세요')
switch (month) {
case '1': case '3': case '5': case '7': case '8': case '10': case '12':
console.log(`${month}월의 마지막 일자는 31일 입니다.`)
break
case '4': case '6': case '9': case '11':
console.log(`${month}월의 마지막 일자는 30일 입니다.`)
break
case '2':
console.log(`${month}월의 마지막 일자는 28일 입니다.`)
break
default:
console.log(`입력값을 확인하세요.`)
}
console.log(month)
while문
while(조건식) {
조건식의 결과가 true인 동안 반복할 문장;
}
do ~ while문
do {
조건식의 결과가 true인 동안 반복할 문장;
}while(조건식)
✔ do ~ while문은 조건식의 결과가 처음부터 false인 경우라도 1번은 {} 문장을 실행함.
for문
for(초기값; 조건식; 증감식){
조건식의 결과가 true인 동안 반복할 문장;
}
let sum = 0
for(let i=1; i<=10; i++){
sum += i
}
// i는 for문 안에서만 써줄 수 있음.
✔ for문의 무한루프
for(;;){
}
break문
switch문 또는 반복중인 루프 내에서 사용하여 해당 문장을 완전히 종료시키고 다음에 위치한 실행문으로 이동한다.
continue문
반복중인 루프 내에서 사용하여 해당 루프의 나머지 부분을 건너뛰고 반복문의 처음으로 되돌아간다.
let num = 1;
while(num <=10){
console.log(num)
num++
if(num == 5) continue
...
...
}
> 만약 num이 5면 다시 while문 처음으로 돌아간다.
'웹 > JavaScript' 카테고리의 다른 글
Interval, Timeout 함수 (0) | 2023.10.28 |
---|---|
프로토타입/상속 (0) | 2023.10.28 |
자바스크립트(배열/함수) (0) | 2023.10.21 |
자바스크립트(변수/타입) (0) | 2023.10.21 |
자바스크립트 (0) | 2023.10.20 |