본문 바로가기

전체 글

(22)
콜백함수란 무엇인가요? 📕 오늘의 질문 콜백함수란 무엇인가요? 함수에 파라미터로 들어가는 함수를 말하며, 순차적으로 코드를 진행하고 싶을 때 사용합니다. //예시 1. addEventListener addEventListener('click', function(){ }) //예시2. setTimeout setTimeout(function(){ }, 1000) 예시에서 보실 수 있든, 함수로 불러와지는 함수 - 함수에 파라미터로 들어가는 함수를 콜백함수라고 합니다. 더 쉽게 이해하자면 콜백함수의 이름을 떠올리시면 됩니다! "이따 전화할게!" 친구에게 조금 있다가 전화할게라고 말하는 것처럼, 콜백함수는 다른 함수(겉에 감싸고 있는 함수가) 실행되고 난 뒤에 실행됩니다. 참고자료 코딩애플, 콜백함수가 뭔지 한국어로 쉽게 설명하는 영..
스택(Stack)과 큐(Queue)란 무엇일까요? 📕 오늘의 질문 스택과 큐에 대해 설명해주세요. 스택(Stack)이란? 스택이란 객체가 한 방향으로 삽입되고 삭제되는 선형 데이터 구조입니다. LIFO (Last In First Out) 방식을 사용하여, 마지막으로 들어온 객체가 가장 먼저 팝 됩니다. 팝은 스택 내 객체의 삭제를 말하며, 스택에 객체를 삽입하는 것은 푸시라고 말합니다. 스택은 한 번에 한 가지 일만 처리할 수 있습니다. → 그렇기 때문에 자바스크립트를 single threaded 언어라고 부릅니다. 위 그림처럼 스택은 LIFO 방식대로 하나씩 객체를 처리하게 됩니다. 그렇다면 setTimeout과 같이 시간이 걸리는 함수가 포함되어 있다면 어떻게 될까요? setTimeout에 설정된 시간을 모두 기다린 뒤 다음 객체를 처리할까요? 그렇..
Node.js가 작동하는 방식: 단일 스레드(Single Thread), 비동기(Asynchronous) 📕 오늘의 질문 Single Threaded Async가 무슨 뜻인지 아시나요? 단일 스레드에 대해서도 공부해보고, 비동기에 대해서도 공부해봤지만 'Single Threaded Async'는 본 적이 없어서 조금 당황한 질문입니다. 실제로 구글링을 하거나 유튜브 검색을 했을 때에도 이 정확한 용어는 찾지 못했기 때문에, 추측으로 단일 스레드와 비동기에 대해 설명하는 질문이라고 가정하고 개념을 정리해봤습니다. 아마 Node.js가 작동하는 방식을 설명할 수 있는 지를 보기 위한 질문인 것으로 생각됩니다 (부트캠프에서 주특기로 Node.js를 선택했기 때문에 받은 질문도 이에 특정된 질문인 것을 염두했을 때의 생각입니다). 자, 그러면 어서 단일 스레드와 비동기에 대해 알아보도록 하겠습니다. 단일 스레드(S..