๋ณธ๋ฌธ์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ
/ Docs

LocalStorage์™€ sessionStorage (with ์ฟ ํ‚ค๐Ÿช)

ํ”„๋ก ํŠธ์—”๋“œ ์ค‘์š” ๊ฐœ๋… - HTTP ๊ฐœ๋… ์ •๋ฆฌ 3ํŽธ์ž…๋‹ˆ๋‹ค.

ํ”„๋ก ํŠธ์—”๋“œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ์˜ ๊ธฐ๋ฐ˜์ด ๋˜๋Š” ๊ฐœ๋… ์ž…๋‹ˆ๋‹ค.

๊ฐœ๋…์ •๋ฆฌ ๋์—๋Š” ๊ด€๋ จ ๋ฉด์ ‘์งˆ๋ฌธ์„ ์ฒจ๋ถ€ํ•˜์˜€์œผ๋‹ˆ ๋„์›€์ด ๋˜์—ˆ์œผ๋ฉด ์ข‹๊ฒ ์Šต๋‹ˆ๋‹ค.

๋‚ด(์„œ๋ฒ„)๊ฐ€ ๋งŒ๋“  ์ฟ ํ‚ค~โ€‹

์ฟ ํ‚ค๋Š” ํด๋ผ์ด์–ธํŠธ(๋ธŒ๋ผ์šฐ์ €)์— ์ €์žฅ๋˜๋Š” ์ž‘์€ ๋ฐ์ดํ„ฐ ์กฐ๊ฐ์œผ๋กœ, ์„œ๋ฒ„๊ฐ€ ํด๋ผ์ด์–ธํŠธ์— ์ƒํƒœ ์ •๋ณด๋ฅผ ์ €์žฅํ•˜๊ธฐ ์œ„ํ•ด ์‘๋‹ต ํ—ค๋”์— ํฌํ•จ์‹œ์ผœ ์ „์†กํ•ฉ๋‹ˆ๋‹ค.

  • HTTP์˜ ๋ฌด์ƒํƒœ์„ฑ์„ ๋ณด์™„
  • ์ €์žฅ์œ„์น˜ : ํด๋ผ์ด์–ธํŠธ
  • ์ €์žฅ ์šฉ๋Ÿ‰ ์ œํ•œ (4KB)
  • HTTP ์š”์ฒญ์‹œ ์ž๋™์œผ๋กœ ์„œ๋ฒ„์— ์ „์†ก๋จ
  • ๋งŒ๋ฃŒ ์‹œ๊ฐ„ ์„ค์ • ๊ฐ€๋Šฅ
  • ๋„๋ฉ”์ธ ๊ธฐ๋ฐ˜์œผ๋กœ ์ €์žฅ๋˜๋ฉฐ ๋ธŒ๋ผ์šฐ์ € ๊ฐ„ ๊ณต์œ  ๊ฐ€๋Šฅ
  • ๋‹จ์ : ์ž‘์€ ์šฉ๋Ÿ‰, ์„œ๋ฒ„ ์ „์†ก์œผ๋กœ ์ธํ•œ ํŠธ๋ž˜ํ”ฝ ์ฆ๊ฐ€, ๋ณด์•ˆ ์ทจ์•ฝ

์›น ์Šคํ† ๋ฆฌ์ง€โ€‹

HTML5์—์„œ๋Š” ์ฟ ํ‚ค์˜ ๋‹จ์ ๋“ค์„ ๋ณด์™„ํ•œ ์ข€ ๋” ๊ฐ„๋‹จํ•œ ์›น ์ €์žฅ์†Œ(Web Storage)๋ฅผ ๋„์ž…ํ–ˆ์Šต๋‹ˆ๋‹ค.

์›น ์ €์žฅ์†Œ๋Š” ๋ธŒ๋ผ์šฐ์ €์—์„œ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๊ณ  ๊ด€๋ฆฌํ•˜๋Š” ๊ธฐ์ˆ ๋กœ, ์ฟ ํ‚ค์™€ ์œ ์‚ฌํ•˜์ง€๋งŒ ๋ฐ์ดํ„ฐ ์ „์†ก๊ณผ ์šฉ๋Ÿ‰ ๋“ฑ์—์„œ ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฟ ํ‚ค vs Web Storage

ํŠน์ง•cookieweb storage
์ €์žฅ์œ„์น˜ํด๋ผ์ด์–ธํŠธํด๋ผ์ด์–ธํŠธ
๋ฐ์ดํ„ฐ ์ „์†ก์š”์ฒญ๋งˆ๋‹ค ๋ชจ๋“  ์ฟ ํ‚ค ์ „์†ก์ž๋™ ์ „์†ก ์•ˆ๋จ (๊ฐœ๋ฐœ์ž๊ฐ€ ์ œ์–ด)
์šฉ๋Ÿ‰ ์ œํ•œ4KB5MB ์ด์ƒ
๋งŒ๋ฃŒ ์‹œ์ ์„ค์ • ๊ฐ€๋ŠฅsessionStorage : ํƒญ ์ข…๋ฃŒ์‹œ
localStorage : ์ง์ ‘ ์‚ญ์ œ์‹œ
๋ฐ์ดํ„ฐ ํ˜•์‹๋ฌธ์ž์—ดJS๊ฐ์ฒด
์„ธ์…˜ ์ •์˜๋ธŒ๋ผ์šฐ์ € ๋‹จ์œ„ (๋‹ค๋ฅธ ํƒญ, ๋‹ค๋ฅธ ์ฐฝ๋„ ๊ฐ™์€์„ธ์…˜)sessionStoarge : ํƒญ ๋‹จ์œ„

์ฟ ํ‚ค์™€ ๊ตฌ๋ณ„๋˜๋Š” Web Storage์˜ ์žฅ์ ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ์ฟ ํ‚ค์™€ ๋‹ฌ๋ฆฌ ์„œ๋ฒ„์— ์ „์†ก๋˜์ง€ ์•Š๋Š”๋‹ค. โ†’ ํŠธ๋ž˜ํ”ฝ ๋น„์šฉ ์ค„์—ฌ์คŒ
  2. ๊ฐ์ฒด์ •๋ณด๋ฅผ ์ €์žฅํ•  ์ˆ˜ ์žˆ๋‹ค.
  3. ์šฉ๋Ÿ‰์˜ ์ œํ•œ์ด ํฌ๋‹ค.
  4. ์ฟ ํ‚ค๋Š” ๊ฐ™์€ ๋ธŒ๋ผ์šฐ์ €๋ผ๋ฉด ๊ฐ’์„ ๊ณต์œ ํ–ˆ๋Š”๋ฐ, sessionStorage๋Š” ๊ฐ™์€ ๋ธŒ๋ผ์šฐ์ €์—ฌ๋„, ๋‹ค๋ฅธ ํƒญ์ด๋ผ๋ฉด ๊ฐ’์„ ๊ณต์œ ํ•˜์ง€ ์•Š๋Š”๋‹ค.

๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€โ€‹

๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€๋Š” ์ฟ ํ‚ค์˜ ์š”์ฒญ๋งˆ๋‹ค ๋ชจ๋“  ์ฟ ํ‚ค ์ „์†ก์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.

๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€๋Š” ํด๋ผ์ด์–ธํŠธ ๋‚ด์—์„œ ์žฅ๊ธฐ์ /์˜๊ตฌ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•˜๋Š” ๋ฐ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์ €์žฅํ•œ ๋ฐ์ดํ„ฐ๋Š” ๋ธŒ๋ผ์šฐ์ €๋ฅผ ์ข…๋ฃŒํ•ด๋„ ์œ ์ง€๋˜๊ธฐ ๋•Œ๋ฌธ์— ์„œ๋ฒ„ ํ†ต์‹ ์ด ํ•„์š” ์—†๊ฑฐ๋‚˜ ๋‚˜์ค‘์—๋„ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ๋•Œ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ) ์‚ฌ์šฉ์ž ํ…Œ๋งˆ, ์–ธ์–ด ์„ค์ •, ์ตœ๊ทผ ๋ณธ ํ•ญ๋ชฉ

  • ์ง€์†์„ฑ ์žˆ๋Š” ๋ฐ์ดํ„ฐ ์ €์žฅ
  • ๋กœ์ปฌ์— ๋„๋ฉ”์ธ ๋ณ„๋กœ ์ง€์†๋˜๋Š” ์ €์žฅ์†Œ
  • ์ง์ ‘ ์‚ญ์ œ ์ „๊นŒ์ง€ ์œ ์ง€๋จ (๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ข…๋ฃŒ๋˜๋„ ์œ ์ง€)
  • ์ €์žฅ ์šฉ๋Ÿ‰์ด ํฌ๊ณ , ์„œ๋ฒ„ ์ „์†ก ์—†์Œ

์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€โ€‹

์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€๋Š” ์ฟ ํ‚ค์˜ ๋„๋ฉ”์ธ์ด ๊ฐ™์œผ๋ฉด ํ•ญ์ƒ ์ฟ ํ‚ค๋ฅผ ๋ณด๋‚ธ๋‹ค์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.

์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€๋Š” ์„ธ์…˜(ํƒญ)์ด ์ข…๋ฃŒ๋ ๋•Œ๊นŒ์ง€ ์ง€์†๋˜๋Š” ์Šคํ† ๋ฆฌ์ง€์ž…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ ์ž ๊น ๋™์•ˆ ์œ ์ง€ํ•ด์•ผ ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ €์žฅํ•  ๋•Œ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ) ์ฑ„ํŒ… ์ž…๋ ฅ ๋‚ด์šฉ, ํผ ์ž๋™ ์ €์žฅ

  • ๋ธŒ๋ผ์šฐ์ € ํƒญ ๋‹จ์œ„๋กœ ๊ฒฉ๋ฆฌ๋จ
  • ์„ธ์…˜(ํƒญ) ์ข…๋ฃŒ์‹œ ๋ชจ๋‘ ์‚ญ์ œ
  • ๊ฐ™์€ ๋ธŒ๋ผ์šฐ์ €๊ฐ„ ๊ณต์œ X, ๊ฐ™์€ ํƒญ ๊ฐ„ ๊ณต์œ X
โ›”

example.com์—์„œ ์ƒ์„ฑ๋œ ์ฟ ํ‚ค๋Š”, example.com ๋„๋ฉ”์ธ์œผ๋กœ ์š”์ฒญ์„ ๋ณด๋‚ผ๋•Œ๋งˆ๋‹ค ํ•จ๊ป˜ ์ „์†ก๋ฉ๋‹ˆ๋‹ค.

์ด๋•Œ ๋™์ผํ•œ ๋„๋ฉ”์ธ์— ํฌํ•จ๋œ ๋‹ค๋ฅธ ์„œ๋ธŒ ํŽ˜์ด์ง€ ๋˜ํ•œ ์ฟ ํ‚ค์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๋ณด์•ˆ์ƒ์ด๋‚˜ ํŠธ๋ž˜ํ”ฝ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.


์ฟ ํ‚ค์™€ ์›น ์Šคํ† ๋ฆฌ์ง€ ์‚ฌ์šฉ์ฒ˜ ํ•œ๋ˆˆ์—๋ณด๊ธฐโ€‹

๋ชฉ์ ์ถ”์ฒœ ์ €์žฅ ๋ฐฉ์‹ํŠน์ง•
์ž๋™ ๋กœ๊ทธ์ธ ์—ฌ๋ถ€, ๊ด‘๊ณ  ~์ผ๋™์•ˆ ๋ณด์ง€ ์•Š๊ธฐ์ฟ ํ‚ค๊ธฐ๊ฐ„ ์„ค์ •,์„œ๋ฒ„์™€์˜ ์ƒํ˜ธ์ž‘์šฉ
์‚ฌ์šฉ์ž ํ…Œ๋งˆ ์„ค์ •, ์–ธ์–ด ์„ค์ •๋กœ์ปฌ ์Šคํ† ๋ฆฌ์ง€ localStorageํด๋ผ์ด์–ธํŠธ ๋‚ด ์žฅ๊ธฐ์ €์žฅ
์ฑ„ํŒ…, ์ž„์‹œ ํผ ์ €์žฅ, ํƒญ๋ณ„ ๋ฐ์ดํ„ฐ, ์‹ค์‹œ๊ฐ„ ์—…๋ฐ์ดํŠธ ์ •๋ณด์„ธ์…˜ ์Šคํ† ๋ฆฌ์ง€ sessionStorageํƒญ ๋‹จ์œ„์˜ ์ž„์‹œ ์ €์žฅ
๐ŸŒž

localStorage, sessionStorage์˜ ๋“ฑ์žฅ์—๋„, ์ฟ ํ‚ค๋Š” ์ฟ ํ‚ค๋งŒ์˜ ์“ฐ์ž„์ƒˆ๊ฐ€ ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.

  • ์ฟ ํ‚ค๋Š” ์„œ๋ฒ„์™€์˜ ์ƒํƒœ ์œ ์ง€๋ฅผ ์œ„ํ•ด ์‚ฌ์šฉ, ์ž๋™ ์ „์†ก์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์œ ๋ฆฌ
  • localStorage๋Š” ํด๋ผ์ด์–ธํŠธ ๋‚ด ์žฅ๊ธฐ ์ €์žฅ, ์„œ๋ฒ„ ํ†ต์‹  ํ•„์š” ์—†๋Š” ๊ฐ’์— ์ ํ•ฉ
  • sessionStorage๋Š” ํƒญ ๋‹จ์œ„์˜ ์ž„์‹œ ์ €์žฅ์†Œ, ์„ธ์…˜ ์ค‘ ์œ ์ง€๋˜๋Š” ๊ฐ’ ์ €์žฅ์— ์œ ๋ฆฌ
๊ด€๋ จ ๋ฉด์ ‘ ์งˆ๋ฌธ

@ ์ฟ ํ‚ค, sessionStorage, localStorage์˜ ์ฐจ์ด์ ์€ ๋ฌด์—‡์ธ๊ฐ€์š”?