if(condition) {
//code
}
소괄호 안에, 표현식 값을 참/거짓으로 형변환된다.
"",0,undefined,null,false, NaN 값을 제외하고는 참으로 판명된다.
if(10<20) {
consoloe.log('10은 20보다 작습니다.') ;
}
참 => '10은 20보다 작습니다.'가 출력이 된다. 거짓이면 출력이 되지 않는다.
switch문
const grade =7;
switch(grade) {
case 1:
console.log('브론즈');
break;
case 2:
console.log('실버');
break;
case 3:
console.log('골드');
break;
default:
console.log('아이언');
}
const grade =1;
switch(grade) {
case 1:
console.log('브론즈');
case 2:
console.log('실버');
break;
case 3:
console.log('골드');
break;
default:
console.log('아이언');
} =>브론즈, 실버가 나오게 된다. break가 존재하지 않으면 break를 만날 때까지 결과값이 나오게 된다.
// 학생의 점수를 입력 받는 부분은 일단 변수의 값을 변경하는 것으로 합니다.
const studentScore = 70; // 학생의 점수
let studentGrade; //학점
// [▼] 여기에 코드를 작성해주세요
switch (studentScore) {
case 100:
case 90:
studentGrade = 'A';
break;
case 80:
case 70:
studentGrade = 'B';
break;
case 60:
case 50:
studentGrade = 'C';
break;
case 40:
case 30:
studentGrade = 'D'
break;
default:
studentGrade = 'F'
break;
}
//데이터 출력
console.log(`학생의 최종 학점은 ${studentGrade} 학점입니다.`);
반복문
while(codition) {
//code
}
let num = 1;
while(num<10) {
console.log(num);
num++
} => 1,2,3,4,5,6,7,8,9
do while
do {
//code
}while(codition)
while에 condition이 참이면, do에 걸린 중괄호가 실행이 된다.
while 키워드의 조건식의 참 거짓 유무와 상관없이 무조건 한번은 do 키워드 다음 중괄호가 실행함
let num =1;
do {
console.log(num);
num++;
}while(false); =>1이 출력됨
만약 while(true)라고 하면, 계속해서 작동하게 된다.
for
for(초기식;조건식;증감문) {
//code
}
초기식 해석 => 조건식이 참이면 => 중괄호가 실행=> 증감문(증가or 감소)=> 조건식 비교 참=> code
조건식이 거짓이면 끝난다.
for (let i=0;i<5;i++) {
console.log(`ì는 ${i}`)
} 0,1,2,3,4가 출력이 된다.
for(변수(데이터를 반복하여 값이 할당 될 변수. 인덱스, 객체는 key) in 데이터(배열or객체)) {
}
_텍스트_for(변수 of 데이터(배열)) {
}배열 데이터만 반복할 수 있다.배열의 데이터 값에 직접적으로 접근한다.
const arr=[10,20,30];
const obj = {
name:'철수',
age:20
}
for(let index in arr) {
console.log(index)
} => 0,1,2가 출력이 된다.
const arr=[10,20,30];
const obj = {
name:'철수',
age:20
}
for(let index in arr) {
console.log(arr[index])
} => 10,20,30이 출력 된다.
const arr=[10,20,30];
const obj = {
name:'철수',
age:20
}
for(let key in obj) {
console.log(key)
} => key값이 출력이 된다.:name, age
const arr=[10,20,30];
const obj = {
name:'철수',
age:20
}
for(let key in obj) {
console.log(obj.key)
} => undefined
const arr=[10,20,30];
const obj = {
name:'철수',
age:20
}
for(let key in obj) {
console.log(obj[key])
} => 철수, 20
const arr=[10,20,30];
const obj = {
name:'철수',
age:20
}
for(let value of arr) {
console.log(value)
} =>10,20,30
for in문에서, 마침표 연산은 불가능하다. "name","age"형태로 읽히기 때문에..
for in문은 배열, 객체를 다 받을 수 있지만,
for of문 배열 데이터만 받아서 사용할 수 있다.
다중 반복문
for(i=0;i<2;i++) {
console.log(`ì는 ${i}`);
for(j=0;j<2;j++) {
console.log(`j는 ${j}`);
}
}
ì는 0
j는 0
j는 1
ì는 1
j는 0
j는 1
break, continue
break:반복문을 즉시 종결하고 싶을 때,
continue: 반복문의 코드 실행을 건너 뛰다.
for(let i=0;i<5;i++) {
if(i===2) break;
console.log(i)
} => 0,1만 출력이 된다.
for(let i=0;i<5;i++) {
if(i===2) continue;
console.log(i)
}=>0,1,3,4
for(let i=0;i<5;i++) {
if(i===2 || i===4) continue;
console.log(i)
}=> 0,1,3