Skip to content

Commit 8f5bee0

Browse files
['try..catch'와 에러 핸들링] 과제 보완
1 parent 51cd4f4 commit 8f5bee0

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

1-js/10-error-handling/1-try-catch/1-finally-or-code-after/solution.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
차이점은 함수 내부의 코드를 보면 분명해집니다.
22

3-
`try..catch`에서 '빠져나오게 하는' 코드가 있다면 함수의 행동이 달라집니다.
3+
`try..catch` '빠져나오게 하는' 코드가 있다면 함수의 행동이 달라집니다.
44

55
아래 예시와 같이 `try..catch` 내부에 `return`이 있을 때가 대표적인 예입니다. `finally` 절은 `return`문을 통해 `try..catch`를 빠져나가는 경우를 포함하여 `try..catch`가 종료되는 *모든* 상황에서 실행됩니다. `try..catch`가 종료되었지만, 함수 호출 코드가 제어권을 갖기 직전에 실행되죠.
66

@@ -30,7 +30,7 @@ function f() {
3030
throw new Error("에러 발생!");
3131
} catch (e) {
3232
// ...
33-
if("can't handle the error") {
33+
if("에러를 핸들링 할 수 없다면") {
3434
*!*
3535
throw e;
3636
*/!*
@@ -44,4 +44,4 @@ function f() {
4444
f(); // cleanup!
4545
```
4646

47-
이렇게 `finally` 절을 붙여주면 초기화가 보장됩니다. 작업 내역을 초기화해주는 코드를 단순히 `f`의 끝에 붙였다면, 위 예시와 같은 상황에선, 초기화 코드가 실행되지 않습니다.
47+
이렇게 `finally` 절을 붙여줘야 초기화가 보장됩니다. 작업 내역을 초기화해주는 코드를 단순히 `f`의 끝에 붙였다면, 위와 같은 상황일 때 초기화 코드가 실행되지 않습니다.

1-js/10-error-handling/1-try-catch/1-finally-or-code-after/task.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2,17 +2,17 @@ importance: 5
22

33
---
44

5-
# Finally 아니면 코드만?
5+
# finally 아니면 코드만?
66

77
두 코드 조각을 비교해보세요.
88

99
1. 첫 번째 코드 조각은 `try..catch` 이후에 코드를 실행하기 위해 `finally`를 사용하였습니다.
1010

1111
```js
1212
try {
13-
work work
13+
작업
1414
} catch (e) {
15-
handle errors
15+
에러 핸들링
1616
} finally {
1717
*!*
1818
작업 내역 삭제
@@ -23,16 +23,16 @@ importance: 5
2323

2424
```js
2525
try {
26-
work work
26+
작업
2727
} catch (e) {
28-
handle errors
28+
에러 핸들링
2929
}
3030
3131
*!*
3232
작업 내역 삭제
3333
*/!*
3434
```
3535

36-
에러의 유무와 상관없이, 작업 후에는 초기화가 필요합니다.
36+
현재 상황은 에러의 유무와 상관없이, 작업 후 초기화를 해야합니다.
3737

3838
`finally`를 사용하면 이점이 있을까요? 아니면 두 코드 조각은 동일하게 동작할까요? 만약 이점이 있다면, 이점이 드러나는 예시를 제시해 주세요.

0 commit comments

Comments
 (0)