JavaScript

이터러블 & 이터레이터 & 제너레이터

JavaScript

이터러블 / 이터레이터 이터레이션 프로토콜은 자료를 순회하기 위한 프로토콜(약속된 규칙)이다. 이터레이션 프로토콜을 따르는 객체는 for .. of 문으로 순회 가능하다.

타입스크립트란?

JavaScript

TS는 JS에 추가적으로 데이터의 종류(Type)를 명시해준 언어다. TS 코드는 JS로 변환 (컴파일)되어 실행된다. 그래서, 타입스크립트(TS)도 결국 자바스크립트(JS)다.

비동기 처리 (Promise & async/await)

JavaScript

지난 글에서 한 번에 하나의 작업만 실행할 수 있는 자바스크립트가 어떻게 동시에 여러 작업을 실행할 수 있는 지 알아보았다. 짧게 요약하자면, 자바스크립트 엔진은 하나의 작업...

이벤트 루프란?

JavaScript

들어가기전 자바스크립트는 싱글 스레드 기반 언어다. 즉, 자바스크립트 엔진은 한 번에 하나의 작업(task)만 할 수 있다. 그럼에도 불구하고, 자바스크립트는 여러 작업을 동...

이벤트 플로우 (버블링, 캡처링)

JavaScript

이벤트란? 이벤트란 클릭이나 키보드 입력과 같이 일반적으로 사용자가 행하는 모든 동작을 일컫는다. 사용자의 입력을 받기 위해, 우린 HTML 요소에 이벤트를 연결해주는데 이것...

this란?

JavaScript

This란 객체지향 프로그래밍에서 객체는 상태를 나타내는 프로퍼티와 동작을 나타내는 메서드가 하나의 논리적인 단위로 묶여진 자료구조다. 메서드가 자신이 속한 객체의 프로퍼티를...

클로저란?

JavaScript

클로저란? 클로저는 자바스크립트 고유 개념이 아니다. 함수형 프로그래밍 언어에서 사용되는 중요한 특성이다. 예시 코드 클로저는 조금 난해한 개념이기 때문에 예시 코드를 먼저 ...

실행 컨텍스트란?

JavaScript

실행 컨텍스트 자바스크립트의 실행 컨텍스트(Execution Context)는 코드가 실행되는 환경을 의미하는데, 실행 컨텍스트를 번역하면 “코드의 문맥”으로 즉, 코드가 실...

스코프란?

JavaScript

스코프란? 변수는 자신이 선언된 위치에 따라, 다른 코드가 변수 자신을 참조할 수 있는 범위가 결정된다. 사실, 이건 변수 뿐만 아니라 모든 식별자가 마찬가지다. 모든 식별자...

호이스팅이란?

JavaScript

호이스팅이란? 호이스팅이란 변수 혹은 함수의 선언이 해당 스코프의 최상단으로 끌어 올려진 것 같이 동작하는 자바스크립트의 특징이다. 다음 예시를 보자. jsx console....

Map 객체에 대해서 알아보자

JavaScript

최근 코딩 테스트 문제를 풀면서 Map을 이용한 풀이들을 자주 접하였다. key - value 자료형이 필요할 때는 무조건 Object만 썼었는데 Map 객체가 궁금해졌다. ...

Intersection Observer API를 활용한 무한 스크롤

JavaScript

무한 스크롤이란? 무한 스크롤 (Infinite Scroll)은 유저가 페이지를 스크롤링 중 최하단에 도달했을 때, 나머지 컨텐츠를 로드하는 페이징 방식으로 페이지 번호를 일...