JavaScript 7

JS의 AbortController 내장 API란?

좋은 질문이에요 👍AbortController는 JavaScript에서 비동기 작업(특히 fetch 요청) 을 중간에 취소(abort) 하기 위해 만들어진 내장 API예요.🧠 한 줄 요약AbortController는 fetch, async 함수, EventListener 같은 비동기 동작을 중간에 멈추게 할 수 있는 도구다.📘 기본 구조const controller = new AbortController(); // 컨트롤러 생성const signal = controller.signal; // 시그널 객체 추출fetch("https://example.com/data", { signal }) // 시그널 연결 .then(res => res.json()) .then(data =..

JavaScript 2025.11.09

Electron에서 데이터를 저장-읽기할 때는 app.getPath("userData") 경로를 사용해야 한다.

개발환경과 설치버전에서는 파일 경로가 다르다.Electron을 electron-builder로 패키징하면 보통 코드가 다음 구조로 들어간다.C:\Users\\AppData\Local\Programs\\resources\app.asar여기서 app.asar는 읽기 전용 압축 파일이다.개발환경에서 잘 작동하던 파일 경로가 빌드된 설치버전에서는 경로가 달라져서 파일을 못찾게 된다. 따라서 Electron에서 데이터를 저장-읽기할 때는 app.getPath("userData") 경로를 사용해야 한다.이 경로는 사용자별로 쓰기 가능한 폴더를 가리킨다.예시const dataFilePath = path.join(app.getPath("userData"), "BookRecords.csv");

JavaScript 2025.09.15

TS의 유틸리티 타입 Parameters<typeof ????>는 어떤 함수의 매개변수 타입들을 튜플로 뽑아내는 기능.

Parameters는 타입스크립트의 유틸리티 타입 중 하나인데,"어떤 함수의 매개변수 타입들을 튜플(tuple)로 뽑아내는" 기능을 한다.type Parameters any> = T extends (...args: infer P) => any ? P : never; T라는 함수 타입을 받고, (...args: infer P)로 함수의 매개변수 타입을 추론(infer)해서 그 매개변수들의 타입들을 P라는 튜플 타입으로 돌려준다. const fetcher = (...args: Parameters) => fetch(...args).then((res) => res.json());위 코드에서, fetch의 인자를 그대로 ...args로 받고 있으니, 타입스크립트에서는 Parameters를 쓰면 안전하게 타입을 ..

JavaScript 2025.08.09

타입스크립트 인덱스 시그니처 문법 (index signature)

interface StringArray { [index: 타입a]: 타입b;}객체의 속성에 obj['속성이름'] 형태로 접근할 때 (인덱싱), 속성이름이 '타입a' 이면 그 속성의 값은 반드시 '타입b''타입a' 인덱스로 접근할 수 있는 속성은 '타입b' 임을 보장.interface StringArray { [grade:string] : number; name : string; -> X address : number; -> O}위 예시의 경우, 인덱스 시그니처 문법으로 string으로 인덱싱 가능한 속성은 number 타입을 갖는다고 선언함.이 때 name이나 address같은 속성을 추가하면, name과 address 의 속성명이 string 타입이므로 number와 호환 가능해야 함...

JavaScript 2025.07.16

require('fs').readFileSync(0)의 의미.

require('fs').readFileSync(0)에서 0은 **파일 디스크립터(File Descriptor)**를 의미합니다.📌 파일 디스크립터(File Descriptor)란?파일 디스크립터는 운영체제가 프로세스가 열고 있는 파일들을 추적하기 위해 사용하는 정수 값입니다.일반적으로 UNIX 계열 시스템에서 다음과 같은 파일 디스크립터가 예약되어 있습니다:0: 표준 입력 (stdin)1: 표준 출력 (stdout)2: 표준 에러 (stderr)📌 readFileSync(0)의 의미readFileSync(0)은 **표준 입력(stdin)**에서 데이터를 동기적으로 읽어들인다는 의미입니다.즉, 터미널에 사용자가 입력한 데이터를 읽거나, 파이프(|)를 통해 전달된 데이터를 읽습니다.📌 예시js복사편집..

JavaScript 2025.05.13