Blog
Mert Özen'in yazılım geliştirme, backend, frontend ve DevOps üzerine blog yazıları.
JavaScript İleri Tarih İşlemleri: Saat Dilimleri, UTC ve Intl ile Biçimlendirme
Date'in tek bir an tuttuğunu, UTC ve ISO 8601 kurallarını, Intl.DateTimeFormat seçeneklerini, Intl.RelativeTimeFormat ile "3 gün önce"yi, yaz saati tuzağını ve Temporal'a ön bakışı ele alıyoruz.
JavaScript Module'leri Tarayıcıda: import, export, Dynamic import() ve Import Maps
type="module" ile ilk module'ü yazıyor, file:// neden çalışmaz görüyor, named ve default export'u, live binding'i, dynamic import()'u, import maps'i ve ES2025'in JSON module'lerini öğreniyoruz.
JavaScript URL, URLSearchParams ve History API: Sayfayı Yenilemeden Adres Yönetimi
URL ve URLSearchParams ile adresi parçalamayı, hash'i, pushState ile replaceState farkını, popstate'in ne zaman geldiğini öğreniyor ve framework'süz küçük bir SPA router'ı yazıyoruz.
JavaScript Web Storage ve Cookie: localStorage, sessionStorage ve document.cookie
localStorage ile sessionStorage farkını, JSON ile object saklamayı, sekmeler arası storage event'ini, kota ve güvenlik sınırlarını, cookie attribute'larını ve HttpOnly'nin neden görünmediğini anlatıyoruz.
JavaScript İleri Formlar: FormData, Constraint Validation API ve Fetch
form.elements ve FormData ile değerleri toplamayı, validity ve setCustomValidity ile kendi kurallarını yazmayı, invalid event'ini yakalamayı ve formu sayfa yenilenmeden fetch ile göndermeyi öğreniyoruz.
JavaScript Gelişmiş Event'ler: Bubbling, Capturing, Event Delegation ve CustomEvent
Event'in capturing, target ve bubbling aşamalarını, stopPropagation'ı, tek listener'la event delegation'ı, once/passive/signal seçeneklerini, CustomEvent'i ve pointer event'lerini örneklerle görüyoruz.
JavaScript ile Gelişmiş DOM: Gezinme, closest, dataset, template ve Toplu Güncelleme
DOM ağacında parent/children/sibling ve closest ile geziniyor; dataset, insertAdjacentHTML, DocumentFragment, template, cloneNode ve getBoundingClientRect'i görüyor, reflow'a girip toplu güncelleme yapıyoruz.
JavaScript Fetch API: GET, POST, response.ok, Zaman Aşımı ve CORS'a Giriş
Fetch API ile veri çekip gönderiyor; response.ok ile 404'ün neden catch'e düşmediğini, POST/PUT/DELETE'i, AbortSignal.timeout ile zaman aşımını, CORS'u ve yükleniyor/hata durumlarını ekranda göstermeyi görüyoruz.
JavaScript async/await: Okunur Asenkron Kod, Hata Yakalama ve Paralel Bekleme
async fonksiyonların neden hep promise döndürdüğünü, await'in sayfayı dondurmadan nasıl beklediğini, try/catch ile hata yakalamayı, sıralı ve paralel beklemeyi, döngüde await tuzağını ve top-level await'i görüyoruz.
JavaScript Promise: Üç Durum, then/catch/finally Zinciri ve Hata Yayılımı
Promise'in üç durumunu çağrı cihazı benzetmesiyle kuruyor; new Promise, then/catch/finally, zincirleme ve hata yayılımını, Promise.all ile race'i ve callback'i promise'e çevirmeyi örneklerle görüyoruz.
JavaScript Asenkron Programlamaya Giriş: Call Stack, Event Loop ve Callback'ler
Tek thread'li JavaScript'in beklemeleri sayfayı dondurmadan nasıl yönettiğini call stack, Web API'ler, callback queue ve event loop ile görüyor; setTimeout(fn, 0) sırrını ve callback hell'i çözüyoruz.
JavaScript Class'ları: Constructor, Getter/Setter, Static ve Private Alanlar
Class syntax'ını kurabiye kalıbı benzetmesiyle kuruyor; constructor, getter/setter, static, # ile private alanlar, extends ve super'i örneklerle görüyor, class'ın aslında prototype olduğunu öğreniyoruz.