티스토리 뷰
공부하다보니 분해구조할당(Destructuring Assign)이 ES modules와 관련이 있어 정리합니다.
Destructuring Assign
Object 각 속성을 개별 할당하는 syntax입니다. 바로 예시를 보시죠.
const obj = { a: '1', b: '2' };
const { a, b } = obj;
console.log(a, b);
// output
// 1 2
const obj = { a: '1', b: '2' };
const item = [];
// 좌변 '{}'을 block 처리되게 하지 않기위해서는 '()'로 묶어야함.
({a:item[0], b:item[1]} = obj);
console.log('item:', item);
// output
// item: [1, 2]
이해가시나요? key를 기반으로 value를 바로 할당하는것이 가능합니다.
변수 선언 keyword(var, let, const)와 사용하면 변수에 할당이 가능하고(1번쨰 예시)
아니라면 소괄호'()'를 이용해 key에 상응하는 변수에 할당을 할 수 있습니다.(2번째 예시)
이제 ES Modules를 확인하겠습니다.
ES Modules
export 구문과 import 구문을 확인해봅시다. import 2가지 예시를 보겠습니다.
// vue-router/index.js
export function createRouter() {...};
export function createWebHistory() {...};
예시1
import * as router from 'vue-router';
// 사용
router.createRouter();
router.createWebHistory();
예시2
import { createRouter, createWebHistory } from 'vue-router';
// 사용
createRouter();
createWebHistory();
어떤가요? 예시1은 객체 형태로 받아서 속성으로 접근하는 반면 예시2는 Destructuring Assign을 통해서 개별 할당을 하여
바로 사용이 가능합니다.
결론
처음 ES Modules를 접했을때 거부감이 다른 것들을 알아갈수록 친숙한 개념으로 다가오네요 ㅎㅎ
이상입니다.

'개발' 카테고리의 다른 글
| [Js] Object Property에 대해 알아보자 (0) | 2022.11.06 |
|---|---|
| [JS] Null인 경우 값 설정 연산, Nullish coalescing operator (??) (0) | 2022.10.30 |
| [JS] function keyword 없는 함수 (0) | 2022.09.01 |
| [Js] Proxy 객체로 Data Binding 구현하기 (0) | 2022.08.30 |
| Naming 규칙 명칭 간단 정리 ('_' , '-', 'MyApp', 'myApp') (0) | 2022.08.25 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 티스토리챌린지
- 스마트피싱보호_캠페인
- vue watch 위험성
- python Pydantic
- Pydantic 기능
- FastAPI 초기 구성
- python venv 구성
- oracle 19c 설치
- unplugin-auto-import
- nuxt3 eslint prettier 설정
- 스파르타 코딩클럽
- docker mssql 이미지 생성
- Compoent
- Oracle Database 19C 설치
- docker mssql create database
- vue watch 대체
- 의존성 패키지 관리
- Composable vs Class
- Oracle Database 19c install
- nuxt3 프로젝트 설정
- 오블완
- vue 리팩토링
- unmounted document.addlistener
- Pydantic 기초
- Composable vs Component
- docker mssql
- nuxt3 structure
- 외래키 삭제
- nuxt3 quasar 설정
- vue watch 문제점
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 |
글 보관함
