19일차 - 2022.03.19

안병욱·2022년 3월 19일
0

오늘 공부한 내용 요약

( 모던 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
  • ||연산자는 truthy값을 만나면 바로 멈추므로
true || alert("not printed");    // 아무것도 출력되지 않음
  • &&의 피연산자가 모두 true인 경우 마지막 피연산자가 반환

  • 첫 번째 피연산자가 truthy이면 AND는 두 번째 피연산자를 반환합니다.
    첫 번째 피연산자가 falsy이면 AND는 첫 번째 피연산자를 반환하고,
    두 번째 피연산자는 무시합니다.

  • &&의 우선순위가 ||보다 높다.

  • x = a ?? b는 밑의 식과 같다

x = (a !== null && a !== undefined) ? a : b;
  • ||는 첫 번째 truthy 값을 반환 / ??는 첫 번째 정의된(defined) 값을 반환
let height = 0;

alert(height || 100); // 100
alert(height ?? 100); // 0


개념 과제

"2" > "12" → true // 2가 1보다 크기 때문에
alert( null || 2 && 3 || 4 ); // 3

공부 출처

자바스크립트.info
코어 자바스크립트 -정재남 지음 -


위의 내용은 공부중 본인이 이해한 내용으로 몇몇 틀린 내용이 있을 수 있습니다.
회독중 발견시 수정하겠습니다

profile
working hard

0개의 댓글