TECH NOTES
기술노트
현장에서 검증된 개발 지식을 기록합니다.
343332313029282726252423
Frontend
이벤트 위임 — 동적으로 추가한 요소에 클릭이 안 먹을 때
나중에 JS로 추가한 버튼에 addEventListener가 안 먹는 이유와, 부모에 한 번만 걸어 모두 처리하는 이벤트 위임 패턴을 정리한다.
Frontend
== 와 === — JavaScript 타입 강제변환의 함정
0 == "", null == undefined, [] == ![]... == 는 타입을 멋대로 변환해 직관을 배신한다. === 를 기본으로 써야 하는 이유를 규칙으로 정리.
Frontend
null과 undefined 차이 — 언제 무엇이 나오나
둘 다 "값이 없음"이지만 의미가 다르다. undefined는 "아직 할당 안 됨", null은 "의도적으로 비움". 언제 뭐가 튀어나오는지 정리한다.
Frontend
0.1 + 0.2 는 왜 0.3이 아닌가 — 부동소수점과 돈 계산
JavaScript에서 0.1 + 0.2가 0.30000000000000004가 되는 건 버그가 아니라 부동소수점의 원리다. 왜 그런지와 돈 계산을 안전하게 하는 법.
Frontend
얕은 복사 vs 깊은 복사 — JavaScript 객체가 꼬이는 이유
스프레드로 복사했는데 원본이 같이 바뀐다면 얕은 복사 함정이다. 참조와 값, 중첩 객체, structuredClone까지 실무 기준으로 정리한다.
Frontend
debounce와 throttle, 검색 입력엔 무엇을 써야 하나
둘 다 호출 빈도를 줄이지만 목적이 다르다. 검색 자동완성은 debounce, 스크롤·리사이즈는 throttle. 차이와 구현.
Backend
Bun 2.0 프로덕션 마이그레이션 — Node 24와의 함정 7가지·실측 가이드
Bun 2.0 프로덕션 도입 결정 가이드. Node 24와의 호환성 함정 7가지, 패키지별 작동 여부, 실측 벤치마크.
Etc
TypeScript 6.0 마이그레이션 — strict 기본·Temporal·Go 컴파일러 7.0 준비
TypeScript 6.0의 strict 기본·Temporal·subpath imports·ES2025 target 변경. 7.0 (Go 재작성)로 가는 마지막 다리.
Backend
Bun 1.2 vs Node 22 실전 벤치마크 — 마이그레이션 실전 가이드
Bun 1.2는 프로덕션 채택이 가파르게 늘고 있다. Node 22와의 실전 벤치마크, 호환성 매트릭스, 마이그레이션 절차를 정리한다.
Frontend
TypeScript 6 — 새로운 타입 시스템 기능
TypeScript 6의 새로운 타입 시스템 기능, 패턴 매칭, 성능 개선 사항.
Backend
Node.js 23 — 새로운 기능과 실험적 API
Node.js 23의 새로운 실험적 기능들과 안정화된 API 정리.
Backend
Deno 3 — 통합 도구 체인의 완성
Deno 3의 완전한 Node.js 호환, 패키지 관리자, 새로운 기능들 정리.