JavaScript Essentials - ch.2 JS 시작하기(6) ~ (10)

이동주·2021년 12월 10일
0

6. 조건문 if else

const a = random()

if (a === 0) {
	console.log('a is 0)
} else if (a === 2) {
	console.log('a is 2')
} else {
	console.log('rest,,,')
}

=> else if에는 조건 넣기가 가능
=> else는 그냥 나머지, 조건 넣기 불가

7. 조건문 switch

switch (a) {
	case 0:
    	console.log('a is 0')
        break
    case 2:
    	console.log('a is 2')
        break
    default:
    	console.log('rest,,,')
}

=> 기본적으로는 if문 사용, 변수가 특정한 값으로 딱 떨어질 때는 switch문이 좋음
=> 한 분기가 끝날 때마다 break를 달아 줘야 함
(break가 없으면 다음 조건도 실행 할 수 있음)

8. 반복문 for

for (시작조건; 종료조건; 변화조건) {}

for (let i = 0; i < 3; i++) {
	console.log(i)
}
  • 실행 코드
const ulEl = document.querySelector('ul');

for (let i = 0; i < 10; i++) {
    const li = document.createElement('li');
    li.textContent = `list-${i + 1}`;
    if ((i + 1) % 2 === 0) {
        li.addEventListener('click', function() {
            console.log(li.textContent);
        })
    }
    ulEl.appendChild(li);
};

9. 변수 유효범위

var, const, let

var 사용을 권장하지 않는 이유?

let과 const와 달리 블럭레벨의 유효범위가 아니라 함수레벨의 유효범위임

=> 범위가 더욱 크기 때문에 의도하지 않은 범위에서 변수가 실행 될 수 있음
=> 이는 필요하지 않은 메모리차지, 메모리 누수 발생 가능

10. 형 변환

const a = '1'
const b = 1

console.log(a === b)
console.log(a == b) // 동등 연산자(권장 X)

=> 위와 같은 상황에서 동등 연산자를 사용하면 형 변환이 일어남

  • 참과 같은 값
    : true, {}, [], 1, 2, 'false', -12, '3.14'...

  • 거짓과 같은 값
    : false, '', null, undifined, 0, -0, NaN

profile
안녕하세요 이동주입니다

0개의 댓글