JavaScript/문법 공부 3

async, await, promise로 비동기 동기 처리하기

자바스크립트를 배워나가는 시점에서 가장 헷갈리는 것은 '비동기'인 것 같습니다. 어떤 개념인지는 이해하고, 대표적인 함수들은 알겠지만, 새로운 것을 가져올 때 의도한 대로 항상 동작하지 않아서 인터넷을 찾아보면 대부분 비동기였기 때문에 일어나는 문제였습니다. 자바스크립트에서도 다른 언어들처럼 db와 연결하여 쿼리문을 통해 데이터를 조회하거나 수정할 수 있습니다. 이걸 연습하던 도중, 쿼리문으로 조회한 내용을 어딘가 저장해두거나, 함수 안에서 받아서 추가적인 연산을 하고 싶거나, 혹은 그 값으로 다시 새로운 쿼리문을 작성해야 할 때 고민이 생겼습니다. 비동기다 보니, 그 값을 어딘가 담아두기도 애매하고 (node js 표준 입력에서 겪은 문제와 비슷한 거 같습니다) 하나를 처리하고 그다음으로 넘어가야 하는..

Node JS 표준 입력 받기

https://nodejs.org/api/readline.html Readline | Node.js v14.6.0 Documentation Readline# Source Code: lib/readline.js The readline module provides an interface for reading data from a Readable stream (such as process.stdin) one line at a time. It can be accessed using: const readline = require('readline'); The following simple exampl nodejs.org 로컬 환경에서의 테스트나 백준 알고리즘 문제를 풀 때는 표준 입력을 구현해야 하는 경우가 종종..

JavaScript 비동기 - Promise 알아보기

Promise란? Promise The Promise object represents the eventual completion (or failure) of an asynchronous operation, and its resulting value. developer.mozilla.org 자바스크립트를 처음 입문하는 입장에서, 기본적인 문법을 훑고나면 '비동기'에 대한 개념이 등장한다. 그와 동시에 소개 되는 것이 바로 promise인데, ECMAScript 2015에서 본격적으로 추가된 문법이라고 한다. 비동기는 어렵게 풀자면 한도 끝도 없겠지만, 입문자의 입장에서 이해한 바로는 하나의 코드가 실행되는 중에 다른 코드가 실행될 수 있는 것이다. 물론 자바스크립트 자체는 싱글 스레드에 동기적인 언어지만,..