Cookies, sessionStorage ve localStorage arasındaki farkı açıklayın.
sobes.tech yapay zeka
AI'dan gelen yanıt
Cookies, istemci tarafında küçük miktarda metin bilgisi (4 KB'ye kadar) depolar, her HTTP isteğiyle kurulu olan domaine gönderilir. Bir sona erme süresi olabilir. Kimlik doğrulama, kullanıcı takibi, kullanıcı tercihleri saklama için kullanılır.
localStorage, sona erme süresi olmadan (kullanıcı veya uygulama silene kadar) istemci tarafında (tarayıcıya bağlı olarak 5-10MB) veri saklar. Veriler tarayıcı oturumları arasında erişilebilir, ancak yalnızca aynı kökenli (alan adı, protokol, port) betikler tarafından erişilebilir. Otomatik olarak HTTP istekleriyle gönderilmez. Uzun süreli depolama ve uygulama ayarları için kullanılır.
sessionStorage, bir tarayıcı oturumu boyunca (sekme veya pencere açık olduğu sürece) veri saklar. Sekme veya pencere kapatıldığında veriler silinir. Depolama kapasitesi localStorage ile benzerdir (5-10MB). Veriler yalnızca aynı kökenli betikler tarafından erişilebilir. Otomatik olarak HTTP istekleriyle gönderilmez. Geçici oturum verileri saklamak için kullanılır.
| Özellik | Cookies | localStorage | sessionStorage |
|---|---|---|---|
| Saklama süresi | Son kullanma tarihi veya tarayıcı kapanışı | Kullanıcı veya uygulama tarafından silinene kadar | Sekme veya pencere açık olduğu sürece |
| Veri boyutu | 4 KB'ye kadar | 5-10MB'ye kadar | 5-10MB'ye kadar |
| Erişilebilirlik | HTTP istekleriyle domaine gönderilir | Yalnızca aynı kökenli JavaScript ile erişilir | Yalnızca aynı kökenli JavaScript ile erişilir |
| Sekmeler arası erişim | Evet | Evet | Hayır (farklı sekmeler için) |
| Amaç | Kimlik doğrulama, takip, tercihler | Uzun süreli depolama, ayarlar | Oturumla ilgili geçici depolama |
localStorage kullanım örneği:
// Veri kaydet
localStorage.setItem('userName', 'Alice');
// Veri al
const userName = localStorage.getItem('userName');
console.log(userName); // Çıktı: Alice
// Veriyi sil
// localStorage.removeItem('userName');
// Tüm depolamayı temizle
// localStorage.clear();
sessionStorage kullanım örneği:
// Veri kaydet
sessionStorage.setItem('orderId', '12345');
// Veri al
const orderId = sessionStorage.getItem('orderId');
console.log(orderId); // Çıktı: 12345
// Veriyi sil
// sessionStorage.removeItem('orderId');
// Tüm depolamayı temizle
// sessionStorage.clear();