조건문
if문
if(조건식) {
조건식이 참인 경우 실행할 코드
}
if else문
if(조건식) {
조건식이 참인 경우 실행할 코드
} else if (조건식2) {
조건식이 거짓일 경우 실행할 코드
} else {
조건식, 조건식2가 모두 거짓일 경우 실행할 코드
}
switch문
switch (값) {
case 값1 :
break;
case 값2 :
break;
default :
break;
};
코드 실행 후 break문을 통해 빠져나옴
default문은 선택사항
다양한 값을 받아오는 상황에서 결정할 때 사용
break
switch문에서 break가 존재하지 않는다면? -> default문까지 모든 코드를 실행시킴
삼항연산자
조건식 ? true인 경우 실행되는 표현식 : false인 경우 실행되는 표현식
if else문을 삼항연산자 중첩으로 표현할 수 있다.
let price = 6000;
let message = (price>5000) ? '비싸요' : ((price < 3000) ? '싸요' : '적당해요');
falsy
0, false, undefined, null, ""(빈 문자열), NaN
!!) 빈 배열, 빈 객체 -> falsy가 아니다!!
truthy
빈 배열
논리 연산자
and(&&)
or(||)
not(!)
반복문
for문
for(초기화식; 조건식; 증감식) {
실행문;
}
스코프
let, const = 블록레벨 스코프, 안에서 선언한 변수는 밖에서 사용 불가능
<-> 렉시컬 스코프 var
for문 문자열 뒤집기
let txt = 'hello world';
let result = '';
for (let i = txt.length-1; i >= 0; i --) {
result += txt[i];
}
let txt1 = 'hello world';
let result1 = '';
for (let i = 0; i<txt1.length; i++) {
result1 = txt1[i] + result1;
}
for문 시그마 계산
let s1 = 0;
for (let i = 1; i<101; i++ {
st += i;
}
for문 팩토리얼
let s3 = 1;
for (let i = 1; i<6; i++) {
s3 *= i;
}
for문 입력된 숫자 합 구하기
let xx = '12345';
let result10 = 0;
for (let i = 0; i<xx.length; i++) {
result10 += parseInt(xx[i]);
} console.log(result10);
while문
while(조건문) {
실행문;
}
do while문
do {
실행문;
} while (조건문);
break문
break를 사용하여 해당 반복문 탈출
continue문
반복문의 다음 루프로 감 (다음 반복문) (남은 코드 실행x)
레이블
반복문 앞에 레이블을 붙여 break, continue와 함께 사용하면 반복문 컨트롤이 쉽다 (사용 권장 안함)
반드시 break, continue문 위에 존재
break문은 모든 레이블에서 사용 가능
continue문은 반복문에서만 사용 가능
timestable:
for (let x = 2; x < 10; x++) {
for (let y = 1; y < 10; y++) {
if (x === 4) break timestable;
console.log(`${x} X ${y} = ${x * y}`);
}
}
Object 반복문
for in 반복문
기본적으로 키 값만 출력
let data = {
'one' : '하나',
'two' : '둘',
'three' : '셋',
'four' : '넷'
}
for (let i in data) {
console.log(i);
}
for (let i in data) {
console.log(data[i]);
}
let data2 = [10,20,30,40];
for (let i in data2) {
console.log(i);
}
for (let i in 'hello world') {
console.log(i);
}
Object 시리즈
Object.keys(); // key 값만 배열 반환
Object.values(); // value 값만 배열 반환
Object.entries(); // key, value 형태의 배열 반환
for of 반복문
for (let i of 'hello world') {
console.log(i);
}
let s = 0;
for (let i of '12345') {
s += parseInt(i);
}
const seat = [['피카츄' , '라이츄', '파이리' ],
['꼬부기' , '버터플', '야도란' ],
['피죤투' , '또가스', '메타몽' ]];
for (let i of seat) {
for (let j of i) {
console.log(j);
}
}