오늘 공부한 내용 요약
( 모던 JavaScript 튜토리얼 복습 )
헷갈렸거나 한번 더 상기시킬 내용
사전순으로 문자열을 비교 / 앞쪽 문자열 < 뒤쪽 문자열 / 대문자 < 소문자
ex) glow > glee
비교하려는 값들의 자료형이 다르면 숫자형으로 바꿈
alert( '01' == 1 ); // true
alert( true == 1 ); // true
let a = 0;
alert( Boolean(a) ); // false
let b = "0";
alert( Boolean(b) ); // true
alert(a == b); // true!
일치 연산자를 사용하면 0과 false를 구별할 수 있음
주의해야할 예시
alert( null == undefined ); // true
동등연산자는 피연산자가 null,undefined일 때 형변환을 하지 않는다.
둘을 비교할 때만 true를 반환
undefined는 null, undefined외의 값과는 같지 않다
undefined는 숫자형으로 변환시 NaN으로 변환
if 문에서 else if 사용후 else를 붙이는건 필수가 아닌 선택사항
?물음표 연산자 여러개 동시 사용가능 / if 대신에 사용할 순 있지만 가독성을 위해서 if문을 사용하는 것이 나은 경우가 많음
or(||) 연산자에 여러개 체이닝 하는경우 피연산자에 truhy가 없다면 마지막 피연산자를 반환
alert( undefined || null || 0 ); // 0
true || alert("not printed"); // 아무것도 출력되지 않음
&&의 피연산자가 모두 true인 경우 마지막 피연산자가 반환
첫 번째 피연산자가 truthy이면 AND는 두 번째 피연산자를 반환합니다.
첫 번째 피연산자가 falsy이면 AND는 첫 번째 피연산자를 반환하고,
두 번째 피연산자는 무시합니다.
&&의 우선순위가 ||보다 높다.
x = a ?? b는 밑의 식과 같다
x = (a !== null && a !== undefined) ? a : b;
let height = 0;
alert(height || 100); // 100
alert(height ?? 100); // 0
개념 과제
"2" > "12" → true // 2가 1보다 크기 때문에
alert( null || 2 && 3 || 4 ); // 3
공부 출처
자바스크립트.info
코어 자바스크립트 -정재남 지음 -
위의 내용은 공부중 본인이 이해한 내용으로 몇몇 틀린 내용이 있을 수 있습니다.
회독중 발견시 수정하겠습니다