TIL 15. Promise, Fetch

five1star·2020년 9월 22일

TIL

목록 보기
14/25
post-thumbnail

1. What I Learned Today.

1) Promise

어제에 이어서 비동기 스프린트 part2를 진행했고 part3, fetch의 사용법에 대해서 학습.

2) Sync & Async

스프린트 리뷰중 나온 이야기. 비동기가 동기의 상위 호환은 아니다. 노드 공식문서에서
fs.exits의 경우는 동기적 사용만을 명시적으로 권유한다. 비동기적으로 처리해야 하는 일이 무엇인지,
동기적으로 해도 무방한 일이 무엇인지 명확하게 이해하는 능력이 필요.

3) Event Loop


이벤트 루프에 대한 영상을 보았다. 핵심은 비동기와 Web api, 그리고 task queue.
비동기로 실행되는 함수들은 콜스택에 언제 쌓일까? setTimeout이 실행되면 콜스택이 진행되는 중간에 끼어들지 않는다.
webapi로 전달된 비동기 함수는 일정시간이 지난 후에 task queue에서 스택이 비워졌을때 콜스택에 쌓이고 실행된다.

예를 들어,

setTimeout(()=>console.log('hi'),0);

let i=0;

while(i<10000){
console.log(i)
i++
}

다음 실행 결과는 무엇일까? setTimeout 시간 변수가 0으로 지정되었다고 하더라도 결과는 while문이 종료된 후에 작동한다.
비동기의 시점에 대해서 생각해보아야할것.

4) fetch

fetch에 대한 내용은 내일 시작되는 스프린트로 심화적으로 학습할것같다. 오늘은 fetch를 통해 api를 promise 형태로 받아올 수 있다는 것을 학습. 마침 프리코스 마지막 단계에서 JSON에 대해 학습하며 openweather에 대해 배웠던것이 생각나 오랜만에 접속했다. 그리고 콘솔창에서 간단히 입력해보았더니...

오오......이렇게 사용하는거구나! 내일 배울것이 기대되는 하루!

2. Status

1) 다행히 몸이 나아지고있다. 조금은 으슬으슬 하지만 아침 따땃한 커피와 차들로 무장하니 버틸만 하다. 컨디션 조절에 더욱 철저히...

2) 오늘 스프린트 리뷰때 공식 문서를 보는 습관을 길러야한다. 적나라하게 말하면 직업 프로그래머로 살고싶다면 블로그에 의존하는 습관을 버려야 한다는 이야기가 나왔다. 어제 유튜브 이야기했는데 뜨끔... 공식문서를 보는것이 쉽지는 않지만, 무엇보다 정확하다는 것을 깨닫는 요즘. 조금 더 공신력 있는 자료들을 통해서 정보를 얻는 습관을 기르자.

3) 라고 했는데 마침 주문했던

이 책이 도착... 같은 작가의 자바스크립트 시리즈 타입과 문법, 스코프와 클로저로 기본을 공부하는데 도움을 얻었었다. 디스나 프로토타입이 없어서 아 책이 옛날책인가보다 했는데 시리즈로 나뉘어져있더라. 책은, 공신력있는 자료일....까?(..)

profile
자라나라 코드코드

0개의 댓글