일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 기술면접
- DI
- Spring Framework
- 백준
- 다이나믹프로그래밍
- 코딩테스트
- 웹
- Spring
- 부스트코스
- was
- 자바스크립트
- 면접
- response
- 비동기
- servlet
- Callback
- 다이나믹 프로그래밍
- 파이썬
- Promise
- request
- JSP
- 알고리즘
- Service
- 부스터2기
- 네이버
- controller
- Spring MVC
- DP
- 서블릿
- IOC
- Today
- Total
목록Callback (3)
Sh개발일기
콜백 함수란 콜백 함수는 다른 코드의 인자로 넘겨주는 함수입니다. 콜백 함수를 넘겨받은 코드는 이 콜백 함수를 필요에 따라 적절한 시점에 실행하게 됩니다. 콜백 함수의 핵심은 제어권의 위임에 있습니다. 예를 들어 보겠습니다. A와 B가 각각 아침 8시에 만나기로 하고 잠을 잡니다. 아침에 적어도 6시에 일어나야 하는 상황이라고 가정해보겠습니다. A는 불안한 마음에 수시로 시계를 확인합니다. 계속 잠을 설치다가 결국 5시 즈음 포기하고 일어나고 말죠. 반면 B는 알람시계의 알람을 세팅합니다. 알람시계는 6시가 되는 순간 울리게 될 것이므로 B는 안심하고 잠자는 일을 마저 진행합니다. 6시가 되자 알람이 울리고 B는 상쾌하게 일어납니다. A는 수시로 시간을 구하는 함수를 직접 호출했습니다. 반면 B는 알람을..
비동기 처리 비동기 처리란 특정 로직의 실행이 끝날 때까지 기다리지 않고 나머지 코드를 먼저 실행하는 것을 의미합니다. 자바스크립트에서는 이러한 비동기 처리가 매우 유용하게 사용되는 경우가 있습니다. let getData() = () => { let responseData; axios.get('http://domain.com/images/1', (res) => { responseData = res }); return responseData; } console.log(getData()); // undefined 위 코드는 자바스크립트를 이용하여 데이터를 가져오는 코드입니다. 일반적인 코드의 경우 res가 나와야 할 것 처럼 보이지만, 결과는 위에 나온것처럼 undefined가 나오게 됩니다. 그 이유는 a..

학습 목표 Ajax기술은 왜 나왔고, 어떻게 사용하는지 이해합니다. 핵심 개념 XMLHTTPRequest Ajax Ajax기술을 이용하면 브라우저의 새로고침 없이 데이터를 얻어와 더 좋은 UX를 제공할 수 있다. Ajax와 비동기 4라인의 익명함수는 비동기로 실행되어 이벤트큐에 보관된다. 이후 load 이벤트가 발생하면(서버로부터 데이터를 받으면) call stack에 실행된다. (즉 4라인의 익명함수는 8,9 라인보다 나중에 실행되게 된다.) JQuery라이브러리를 사용한 AJAX통신의 코드단위 비동기처리는 다음과 같은 순서로 동작하게 된다. Ajax 응답처리 서버로부터 받아온 JSON데이터는 문자열 형태이므로 브라우저에서 바로 실행할 수 없다. 따라서 브라우저에서 제공해주는 JSON객체를 이용하여 문..