
[※ 주의 ※] 아래를 이해하지 않고 이 글을 볼 경우, 이해가 되지 않는 부분이 있을 수 있습니다. 1. 2023.01.08 - [Javascript] - [JS / ECMAScript] 비동기 처리를 조금 더 효율적으로 해보자. 자바스크립트는 싱글 쓰레드 언어이다. 따라서, 쓰레드를 새로 만든다건가, 이벤트를 처리할 때 한 번에 단 한번의 이벤트만 처리할 수 있다. 그러나, 현대 언어는 이벤트 핸들링을 위하여 여러 가지 방법 및 디자인 패턴을 발전시켰고, 이를 알기 위해서는 여러 사전지식을 갖추어야 한다. Node.js나 Dart / Flutter에서 사용하는 event loop, 파이썬에서 활용하는 Global Interpreter Lock 등도 여러 배경 속에서 탄생한 이벤트 처리 방법이다. 이벤..

JS의 쓰임새 중 많은 부분을 차지하고 있는 부분은 "비동기 처리"이다. JS에서는 비동기 처리 방식을 크게 3가지로 구분짓는다. 첫 번째는 콜백 함수, 두 번째는 프로미스, 세 번째는 async/await이다. 이 중 가독성과 편의성을 위해서 보통 두 번째 방법과 세 번째 방법을 섞어서 사용하는 방법을 위주로 현대에선 사용한다. 여러 JS 앱들을 만들었을 경우, 반드시 한 번 쯤은 비동기 처리 관련 코드를 작성해봤을 것이고, JS의 비동기 처리 3가지를 안다고 해서 비동기 처리 관련 코드를 만드는 것과 효율적인 비동기 처리 관련 코드를 만드는 것은 다른 의미를 지니고 있다고 생각한다. 일단, 비동기 처리에 대한 기본 지식(콜백 함수, 프로미스, async/await)에 대한 지식을 가지고 있다는 전제 ..

JS는 Python 혹은 Ruby 처럼 동적 타입 언어이다. 즉, 타입이 컴파일 시에 결정되는 것이 아닌, 런타임에서 결정되는 언어이다. 그러나, 다른 동적 언어와 달리, JS는 매우 특이한 타입 변환을 지원한다. JS의 타입 변환은 다른 언어와 다르게 기상천외한, 정말 기상천외한 방법으로 진행되니, 이에 대하여 정리가 필요할 것 같아 글을 작성하게 되었다. JS의 타입부터 살펴보고, 각 타입이 어떻게 변환되는 지 알아보자. 중간에 흐름을 놓치게 되면 이해가 되지 않는 부분이 있으니 천천히 따라와 주시길. 1. JS의 타입 JS의 타입은 다음과 같이 7+1개가 있다. 이를 머리속에 넣고 가보자. 1. 원시 타입 - 불리언 타입 (true, false) - Null 타입 (null) - Undefined ..

Javascript에서는 변수를 선언하는 세 가지 키워드가 있다. 고전 JS부터 이어진 var와, ES6에서 새로 도입된 키워드 const, let이 있다. 현재 많은 JS 개발자들이 var 대신 const, let을 권장하고 있지만, 아직 많은 고전 JS 코드에서 var를 사용하는 경우도 많다. 임의의 변수를 let과 const로 선언할 경우 var보다 많은 장점이 존재한다. 예를 들어, 호이스팅 문제에서 자유롭거나, 중복된 변수 방지 등등 활용할 수 있다. var, let, const을 비교한 글은 여러 블로그에서 찾을 수 있으니, 구글에서 이에 대하여 검색하면 쉽게 얻을 수 있다. (만약 귀찮다면, 다음 글을 참고하면 된다.) 그러면, var가 let과 const를 사용하는 경우보다 나은 경우가 존..
- Total
- Today
- Yesterday
- Python
- docker
- Proactor
- GDSC
- 백준
- 시간복잡도
- Network
- 사칙연산
- equal
- 프로그래밍
- 문자열
- bomblab
- CSAPP
- 수학
- MIN
- 제어문
- 알고리즘
- 헤더
- C
- for
- Max
- C++
- BRONZE
- 구현
- BOJ
- react
- 함수
- JS
- effective async
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |