6,7,8,9 장 정리

Jun Hyoung Park·2022년 5월 30일
0

6장

템플릿 리터럴

  • 백틱을 사용하여 표현
  • 런타임에 일반 문자열로 변환
  • 이스케이프 시퀀스를 사용하여 줄바꿈을 수행 → 템플릿 리터럴은 이스케이프 시퀀스를 사용하지 않고도 적용이 가능하다
// 일반
var template = '<ul>\n\t<li>
<a href ="#">Home</a></li>\n<ul>';

// 템플릿 리터럴
var template= `<ul>
   <li><a href="#">home</a></li>
</ul>`;

템플릿 리터럴 표현식 삽입

  • 결과가 문자열이 아니여도 강제로 변환
console.log(`1+2 = ${1+2}`) // 1+2 = ${1+2}
// '1+2 = ${1+2}' 

7장

비교 연산자

  • 동등비교
    • ==
    • 데이터 타입을 강제로 형 변환하여 똑같은 상태에서 값을 비교
  var a = 3;
  var b = '3';
  
  console.log(a==b); //true
  // b-> int -> 3
  • 일치비교
    • ===
    • 데이터 타입을 그대로 두고 비쇼
   console.log(a==b); //false
  • Obejct.is
    • NaN이나 -0, +0에 대한 정확한 비교를 위해 사용
	Object.is(a,b); 

지수 연산자

  • 5 ** 3
    • 밑 = 5
    • 지수 = 3
  • (-4) ** 3
    • 음수를 밑으로 사용할떄
  • Math.pow()
    • 여러번 사용할 때 가독성을 높일 때 이용

8장

레이블 문

  • 블록문에 식별자를 붙인 형태
  • 흐름을 제어할 때 사용
    • 흐름을 방해할 수 있기 때문에 잘 사용하지 않는다
 //보통 
 a{
 ~~~~~~
   break a;
 }

9장

옵셔널 체이닝 연산자

  • ?.
    • 좌항 피연사자의 값이 null undefined일 경우 undefined반환 아닐경우 우항 프로퍼티 반환
    • 객체를 가리키기를 기대하는 변수가 null인지 undefined인지 확익할 때 유용
    • 논리 연사자를 사용할 경우 false를 대체할 수 있는 표현식일 경우 null undefined가 아님에도 프로퍼티를 참조할 수 없다
// 옵셔널 체이닝 연산자
let a = null;
let b = a?.b; // undefined

let c = '';
let d =  c?.length; // 0 

//논리 연산
let e = c && c.length; // '' 
// 단축평가로 c=''할당된다

null 병합 연산자

  • ??
    • 좌항의 피연사자가 null undefined 일 경우 우항 피연사자를 반환
	var foo = null ?? 'dede';
	// dede
profile
프론트엔드 지망생

0개의 댓글