<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Waylog Blog · JavaScript</title>
    <link>https://waylog.pages.dev/category/javascript</link>
    <description>Waylog Blog의 JavaScript 카테고리에 속한 글 모음</description>
    <language>ko-KR</language>
    <lastBuildDate>Thu, 21 May 2026 13:50:29 GMT</lastBuildDate>
    <pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate>
    <generator>Next.js</generator>
    <atom:link href="https://waylog.pages.dev/category/javascript/rss.xml" rel="self" type="application/rss+xml"/>
    <item>
      <title>JavaScript AsyncIterator와 Web Streams API 실전: 백프레셔·취소·메모리 누수 없이 대용량 스트리밍 처리하기</title>
      <link>https://waylog.pages.dev/posts/javascript-async-iterator-web-streams-practical</link>
      <guid isPermaLink="true">https://waylog.pages.dev/posts/javascript-async-iterator-web-streams-practical</guid>
      <pubDate>Fri, 24 Apr 2026 00:00:00 GMT</pubDate>
      <category>JavaScript</category>
      <description>콜백 지옥을 넘어선 자리에 또 다른 지옥이 있었다 우리 팀은 2026년 초, 실시간 AI 추론 결과를 클라이언트에 스트리밍하는 기능을 구축하면서 예상치 못한 장벽을 만났습니다. LLM API가 SSE(Server-Sent Events) 스트림으로 응답을 내려보내는데, 프론트엔드에서는 이를 onmessage 콜백으로 받아 상태 업데이트하고, 동시에 Node.js 중간 서버에서는 data 이벤트 핸들러를 중첩해 가공했습니다. 코드는 빠르게 스파게티가 됐고, 한 달이 지났을 때 RSS(Resident </description>
    </item>
    <item>
      <title>JavaScript Signals로 바라보는 세밀한 반응성: TC39 제안과 Preact·Solid·Vue의 구현 비교</title>
      <link>https://waylog.pages.dev/posts/javascript-signals-fine-grained-reactivity</link>
      <guid isPermaLink="true">https://waylog.pages.dev/posts/javascript-signals-fine-grained-reactivity</guid>
      <pubDate>Sat, 28 Mar 2026 00:00:00 GMT</pubDate>
      <category>JavaScript</category>
      <description>상태가 바뀌었는데 왜 화면 전체가 다시 그려지는가 우리 프론트엔드 개발자들은 오래전부터 이 질문을 마주해 왔습니다. 대형 이커머스 프로젝트에서 장바구니 수량 하나를 변경했을 때 헤더, 사이드바, 추천 섹션까지 전부 재렌더링되는 장면을 목격한 경험이 있을 것입니다. Virtual DOM 기반 프레임워크들은 이 문제를 Reconciler와 Diffing 알고리즘으로 해결해 왔습니다. Signals는 다른 방향으로 문제를 풉니다. 어떤 상태가 변경됐을 때 그 상태를 실제로 읽고 있는 부분만 정확히 갱신</description>
    </item>
    <item>
      <title>JavaScript Temporal API 실전 전환 가이드: Date 객체와 dayjs를 대체하는 ES2026 날짜 처리의 모든 것</title>
      <link>https://waylog.pages.dev/posts/javascript-temporal-api-date-migration-guide</link>
      <guid isPermaLink="true">https://waylog.pages.dev/posts/javascript-temporal-api-date-migration-guide</guid>
      <pubDate>Thu, 04 Dec 2025 00:00:00 GMT</pubDate>
      <category>JavaScript</category>
      <description>Date 객체가 터뜨린 버그, 한 번쯤은 겪어봤을 것이다 예약 시스템 QA를 마치고 배포한 다음 날 아침, 고객 센터에서 &quot;3월 8일 오전 2시 30분 예약이 사라졌다&quot;는 제보가 들어옵니다. 코드를 열어봐도 논리 자체는 멀쩡합니다. 문제는 2026년 미국 동부 시간대 DST(서머타임) 전환 순간에 있었습니다. new Date(&apos;2026-03-08T02:30:00&apos;) 이 만들어낸 타임스탬프가 실존하지 않는 시각을 가리키고 있었던 것입니다. 서버는 UTC로 저장하고 클라이언트는 로컬로 파싱하면서 생기</description>
    </item>
    <item>
      <title>JavaScript 클로저(Closure) 완벽 이해하기</title>
      <link>https://waylog.pages.dev/posts/6</link>
      <guid isPermaLink="true">https://waylog.pages.dev/posts/6</guid>
      <pubDate>Sat, 15 Feb 2025 00:00:00 GMT</pubDate>
      <category>JavaScript</category>
      <description>\n\n자바스크립트를 공부하다 보면 반드시 마주치는 거대한 산이 하나 있습니다.바로 클로저(Closure) 입니다. &quot;함수와 그 함수가 선언된 렉시컬 환경의 조합&quot;이라는 MDN의 정의는 너무나도 추상적입니다.하지만 클로저는 React Hooks의 근간이자, 데이터를 안전하게 은닉(Information Hiding)하고, 함수형 프로그래밍을 가능하게 하는 자바스크립트의 핵심 엔진입니다.이 글에서는 난해한 이론 대신, 실무 예제와 도식화를 통해 클로저를 약 3,000자 분량으로 완벽하게 파헤쳐 봅니다</description>
    </item>
  </channel>
</rss>
