Skip to content

Commit 2647cae

Browse files
[동적으로 모듈 가져오기] 보완
- async 함수 용어 통일 - 예시 내 string 번역
1 parent 65a6ed2 commit 2647cae

File tree

3 files changed

+19
-19
lines changed

3 files changed

+19
-19
lines changed

1-js/13-modules/03-modules-dynamic-imports/article.md

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# 동적으로 모듈 가져오기
22

3-
이전 챕터에서 다뤘던 export 문이나 import 문은 "정적인" 방식입니다. 문법이 단순하고 제약사항이 있죠.
3+
이전 챕터에서 다뤘던 export 문이나 import 문은 '정적인' 방식입니다. 문법이 단순하고 제약사항이 있죠.
44

55
첫 번째 제약은 `import`문에 동적 매개변수를 사용할 수 없다는 것이었습니다.
66

@@ -40,18 +40,18 @@ import(modulePath)
4040
.catch(err => <로딩 에러, e.g. 해당하는 모듈이 없는 경우>)
4141
```
4242

43-
비동기 함수 안에선 `let module = await import(modulePath)`와 같이 사용할 수도 있습니다.
43+
async 함수 안에서 `let module = await import(modulePath)`와 같이 사용하는 것도 가능합니다.
4444

45-
예시를 들어보겠습니다. 현재 `say.js`라는 모듈이 있는 상황입니다.
45+
모듈 `say.js`를 이용해 예시를 만들어보겠습니다.
4646

4747
```js
4848
// 📁 say.js
4949
export function hi() {
50-
alert(`Hello`);
50+
alert(`안녕하세요.`);
5151
}
5252

5353
export function bye() {
54-
alert(`Bye`);
54+
alert(`안녕히 가세요.`);
5555
}
5656
```
5757

@@ -64,7 +64,7 @@ hi();
6464
bye();
6565
```
6666

67-
`say.js`아래와 같이 default export가 있는 경우를 가정해 봅시다.
67+
`say.js`에 default export를 추가해보겠습니다.
6868

6969
```js
7070
// 📁 say.js
@@ -73,26 +73,26 @@ export default function() {
7373
}
7474
```
7575

76-
아래와 같이 모듈 객체의 `default` 프로퍼티를 사용하면 이 모듈에 접근할 수 있습니다.
76+
default export 한 모듈을 사용하려면 아래와 같이 모듈 객체의 `default` 프로퍼티를 사용하면 됩니다.
7777

7878
```js
7979
let obj = await import('./say.js');
8080
let say = obj.default;
81-
// 혹은, let {default: say} = await import('./say.js'); 같이 한 줄로도 작성할 수 있습니다.
81+
// 위 두 줄을 let {default: say} = await import('./say.js'); 같이 한 줄로 줄일 수 있습니다.
8282

8383
say();
8484
```
8585

86-
아래는 실제 동작하는 코드입니다.
86+
아래는 실제 동작하는 예시입니다.
8787

8888
[codetabs src="say" current="index.html"]
8989

9090
```smart
91-
동적 import는 `script type="module"`가 없는 일반 스크립트에서도 동작합니다.
91+
동적 import는 일반 스크립트에서도 동작합니다. `script type="module"`가 없어도 됩니다.
9292
```
9393

9494
```smart
95-
`import()`는 함수 호출과 문법이 유사해 보이긴 하지만 함수 호출은 아닙니다. `super()`처럼 괄호를 쓰는 특별한 문법 중 하나입니다.
95+
`import()`는 함수 호출과 문법이 유사해 보이긴 하지만 함수 호출은 아닙니다. `super()`처럼 괄호를 쓰는 특별한 문법 중 하나입니다.
9696
97-
따라서 `import`를 복사해 변수에 넣는다거나 `call/apply`를 사용하는 것이 불가능합니다. 함수가 아니기 때문이죠.
97+
따라서 `import`를 변수에 복사한다거나 `call/apply`를 사용하는 것이 불가능합니다. 함수가 아니기 때문이죠.
9898
```

1-js/13-modules/03-modules-dynamic-imports/say.view/index.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22
<script>
33
async function load() {
44
let say = await import('./say.js');
5-
say.hi(); // Hello!
6-
say.bye(); // Bye!
7-
say.default(); // Module loaded (export default)!
5+
say.hi(); // 안녕하세요.
6+
say.bye(); // 안녕히 가세요.
7+
say.default(); // export default한 모듈을 불러왔습니다!
88
}
99
</script>
10-
<button onclick="load()">Click me</button>
10+
<button onclick="load()">클릭해주세요,</button>
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
export function hi() {
2-
alert(`Hello`);
2+
alert(`안녕하세요.`);
33
}
44

55
export function bye() {
6-
alert(`Bye`);
6+
alert(`안녕히 가세요.`);
77
}
88

99
export default function() {
10-
alert("Module loaded (export default)!");
10+
alert("export default한 모듈을 불러왔습니다!");
1111
}

0 commit comments

Comments
 (0)