본문 바로가기

IT/javascript

[TS]리액트 복습 - 모던 자바스크립트

반응형

1. let 과 const

ES6(=ES2015) 부터 등장.

변수 선언시, var 가 아닌 let과 const 이용

: hoisting

둘리의 호이호이? 가 아닌 호이스팅

자바스크립트에서는 선언되는 변수와 함수를 소스전체에를 스캔하여 메모리에 할당 후 처리하기때문에

컴파일러 언어를 익힌 나같은 사람은 착각하기 쉬운 일이 발생한다.

 

console.log(A1);  //오류 안난다. undefined 라고만 나올뿐...

var A1 = "hello";

 

var A1 = 100; // 중복선언해도 오류 안남..

 

이런걸 해결해주는게 let !

일반적인 언어같이 위에 것들을 막아줌..

 

const 는 상수 선언

 

2. 구조 분해 할당

let arr = [10,20,30,40];

let [a1, a2,a3] = arr; //a1=10, a2=20, a3=30 할당

 

let p1 = {name:"심쿵이", age: 8 , gender: "M"};

let {name:n, age: a, gender } = p1;  //name 속성을 n 에 할당 즉 n="심쿵이" 나머지도 동일쓰

let {name, age , gender = p1; // 별칭을 안주고 동일한 이름으로도 가능 . 즉 let name = "심쿵이" 로 됨!

 

3. 화살표 함수 == 람다함수

주의점!!  화살표 함수 내의 this는 상위 객체를 가르키지 않는다!! **주의**

 

4. 객체 리터럴

var obj = {name: name, age: age, email: email };

var obj = {name, age, email }; //동일하다!

 

5. 템플릿 리터럴

const d1 = new Date();

let name = "심쿵이";

let r1 = `${name} 는 ${d1.toDateString() } 에 우리집에 있다`;  //${} 으로 출력 가능 안에 계산도 가능하다!

 

6. 모듈

import 구문 으로 모듈 임포트

export 로 모듈 공개

7. 프로미스

Promise 로 어싱크 처리 -> 이후 나온 async, await를 현재는 더 잘씀

8. 전개 연산자(spread operator)

객체의 값을 변경시 많이 사용!

let obj1 = {name:"심쿵이", age:7};

let obj2 = {...obj1, age:8}; //age만 덮어써짐!

반응형