diff --git "a/\354\261\225\355\204\260_5/\354\203\201\353\262\224.md" "b/\354\261\225\355\204\260_5/\354\203\201\353\262\224.md" new file mode 100644 index 0000000..a652cbb --- /dev/null +++ "b/\354\261\225\355\204\260_5/\354\203\201\353\262\224.md" @@ -0,0 +1,28 @@ +## 챕터5 최신 자바스크립트 문법과 기능 + +자바스크립트 모듈은 ES6(2015년)에 출시와 함께 표준화 됨 + +#### 모듈의 효능 +- 모듈을 사용하면 각 기능에 맞는 독립적 단위로 코드 분리 가능 +- 다른 곳에서 같은 기능 적용 가능 (코드 재사용성 높아짐) + + +### 외부 소스로 부터 가져오는 모듈 +```js +import {cakeFactory} from "https://example.com/modules/cakeFactory.mjs"; +``` + +> 리액트는 webpack을 통해서 번들링 되고, 로컬 파일 시스템이나 node_modules 디렉토리에 있는 모듈을 참조하도록 설계되어 있어서 안 됨. 사실 리액트 아니여도 이렇게 안쓰지 않나 🤔 + +### 동적으로 모듈 가져오기 +> 적절하게 사용하면 번들 최적화 가능, 반면 사용자 경험 저하되거나 에러의 원인이 될 수도 있으니 조심해야 됨 + +> 이건 여담인데 lazy hydration 해보신분 있으신가요? +> react18에서 나온 selective hydration이랑은 다른거라 생각하는데 lazy hydration에 대해 어떻게들 생각하시는지 의견 궁금합니다.. +전 드라마틱한 개선 이점이 있다고는 생각 안하지만 적용하면 좋을거라고 생각함다 +> [관련 블로그](https://helloinyong.tistory.com/323) + + +### 생성자, 게터, 세터 가진 클래스 +> TC39에서 function 단어의 남용을 줄이려고 노력했다고 하는데, 이유가 궁금해짐 💭 개인적으로 함수 표현식 말고 선언식만 사용해서 function 단어 안쓴지 오래긴 함 +