2022년 05월 13일
수정하기
문서 생성 2022-05-13 23:30:56 최근 수정 2022-05-13 23:54:34
📚 오늘 도전하고, 배운 것
JavaScript
try ... catch ... finally
기본적인 문법에 대해서만 알아보고 처음으로 finally
구문까지 사용해봤다. 어떤 함수 a
에서 다른 함수 b
를 호출하는데 거기서 상태를 변경하는 구조였다.
const sf = new someFunc({a: (param) => {try {this.b()} catch (e) {console.error(e)} finally {// 1. 상태 변경 코드가 있음}}})const b = () => {try {// 비동기 코드가 있음} catch (e) {} finally {// 2. 상태 변경 코드가 있음}}
위와 같이 코드를 작성했다. b
코드는 비동기 통신을 한다. 그러고 다 끝나고 어떤 상태를 변경하도록 finally
구문에 코드(2)를 작성했는데. a
함수를 실행했을 때 왜 비동기 통신이 끝나지 않았는데 상태가 변경되지 하고 시간을 보냈다.
finally
구문이 오류가 나든 나지 않든 실행되는 것인데, 말그대로 [[비동기]] 통신을 했기 때문에 a
함수는 계속 진행이 되어 finally
내부 코드를 실행한다. (1) 필요없기 때문에 삭제했다.
문법 공부를 해놓고 생각 없이 무작정 사용만하며 아까운 시간을 보낸 것 같다.. 하지만 이 시간 덕분에 확실히 알게 되어서 기분이 좋다.
🤔 학습하면서 궁금하거나 어려웠던 점
- 분명 궁금한게 있었는데 기억이 나지 않는다!! 다음부터는 떠오르는 순간 어딘가에 메모해야겠다....
🌅 내일은 무엇을?
- 프로그래머스 과제관 풀어보기
- 다른 사람 코드 읽기
🖋 log
- 하루종일 정말 바빴다. 의도치 않게 세관에 전화할 일도 생기고, 동생 병원도 따라갔다. 모두 다 아무 일 없이 잘 끝나서 상쾌한 하루였다.
- 오늘 중요하지 않은 문제에 골똘히 고민하는 내 모습을 보았다. 만약 무언가 잘 되지 않고 나면 그 문제 탓을 할 것 같다는 생각이 들었다. 앞으론 이런 생각조차 하지 않을 것이다. 그럴 필요가 없는 것이다.