Jieunny์ ๋ธ๋ก๊ทธ
Unit 11. ํ์ด์ง ๋ค์ด์ & ์น ์คํ ๋ฆฌ์ง ๋ณธ๋ฌธ
Unit 11. ํ์ด์ง ๋ค์ด์ & ์น ์คํ ๋ฆฌ์ง
Jieunny 2023. 1. 4. 12:52๐ฃ ํ์ด์ง๋ค์ด์
โ๏ธ ํ์ด์ง๋ค์ด์ : ์ฝํ ์ธ ๋ฅผ ์ฌ๋ฌ ํ์ด์ง๋ก ๋๋์ด ๋ค์ ๋๋ ์ด์ ํ์ด์ง๋ก ์ด๋ํ๊ฑฐ๋ ํน์ ํ์ด์ง๋ก ์ด๋ํ ์ ์๋ ์์
๋ฆฌ์คํธ๊ฐ ๋ง์ ํ ํ๋ฉด์ ๊ณผํ ์คํฌ๋กค์ด ๋ฐ์ํ ๋ ์ ์ฉํ๋ค.
(๊ตฌํ์ ์ค์ต ๋ถ๋ถ์์ ๋ค๋ฃฐ ๊ฒ)
๐ฃ ์น ์คํ ๋ฆฌ์ง
โ๏ธ ๋ธ๋ผ์ฐ์ ์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ์ ์๋ ๊ธฐ์
โ๏ธ ๊ธฐ๋ณธ์ ์ผ๋ก ํค์ ๊ฐ์ผ๋ก ์ด๋ฃจ์ด์ง ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ๋ค.
โ๏ธ ํฌ๋กฌ -> ๊ฐ๋ฐ์ ๋๊ตฌ -> Application -> storage
// ํค์ ๋ฐ์ดํฐ ์ฐ๊ธฐ
localStorage.setItem("key", value);
// ํค๋ก ๋ถํฐ ๋ฐ์ดํฐ ์ฝ๊ธฐ
localStorage.getItem("key");
// ํค์ ๋ฐ์ดํฐ ์ญ์
localStorage.removeItem("key");
// ๋ชจ๋ ํค์ ๋ฐ์ดํฐ ์ญ์
localStorage.clear();
// ์ ์ฅ๋ ํค/๊ฐ ์์ ๊ฐ์
localStorage.length;
โ๏ธ ์ค์ง ๋ฌธ์ํ ๋ฐ์ดํฐ ํ์ ๋ง ์ง์ํ๋ค.
๐จ ๊ฐ์ฒดํ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๊ฒฝ์ฐ ์ฃผ์ํด์ผ ํ๋ค.
localStorage.setItem('obj', {a: 1, b: 2})
localStorage.getItem('obj')
// "[object Object]"
โ๏ธ ๋ค๋ฅธ ํ์ ์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๊ฒฝ์ฐ ๋ฌธ์ํ์ผ๋ก ๋ฐํํ๊ธฐ ๋๋ฌธ์ด๋ค.
๐ ํด๊ฒฐ ๋ฐฉ๋ฒ : JSON ํํ๋ก ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ณ ์ฐ๋ฉด ํด๊ฒฐ
localStorage.setItem('json', JSON.stringify({a: 1, b: 2}))
JSON.parse(localStorage.getItem('json'))
// {a: 1, b: 2}
โ JSON ๋ฐ์ดํฐ๋?
โ๏ธ JSON (JavaScript Object Notaion)
โฐ JS ์์ ๊ฐ์ฒด๋ฅผ ๋ง๋ค ๋ ์ฌ์ฉํ๋ ํํ์
โฐ ์๋ฒ์ ๋ฐ์ดํฐ๋ฅผ ์ฃผ๊ณ ๋ฐ๋ ํ๋์ ํํ
โฐ JSON ํ์ผ์ ํ๋์ ๋ฌธ์ ๋ฐ์ดํฐ
โฐ JS ํ์ผ ๋ด ์ด๋์์๋ ์ฌ์ฉํ ์ ์๋ ์ ์ญ ๊ฐ์ฒด
โ๏ธ JSON.stringfy()
โฐ JSํ์ผ ๋ด์์ ํน์ ํ ๋ฐ์ดํฐ๋ฅผ json ํํ๋ก ๋ฌธ์ ๋ฐ์ดํฐํ ์์ผ์ฃผ๋ ๋ฉ์๋
โฐ ์ฝ๊ฒ jsonํ ์์ผ์ค๋ค๊ณ ์๊ฐํ๋ฉด ๋๋ค.
โ๏ธ JSON.parse()
โฐ JS์์ ํ์ฉํ ์ ์๋ ๋ฐ์ดํฐ๋ก ๋ณํ ์์ผ์ฃผ๋ ๋ฉ์๋
โ๏ธ ๋ก์ปฌ ์คํ ๋ฆฌ์ง์ ์ ์ฅ๋ ๋ฐ์ดํฐ๋ ๋ธ๋ผ์ฐ์ ๋ฅผ ๋ซ์๋ ์ฌ๋ผ์ง์ง ์๊ธฐ ๋๋ฌธ์ ์ง์ ์ญ์ ํด์ค์ผ ํ๋ค.
localStorage.length
// 5
localStorage.key(0)
// "email"
localStorage.removeItem('obj')
// undefined
localStorage.length
// 4
localStorage.clear()
// undefined
localStorage.length
// 0
1๏ธโฃ ๋ก์ปฌ ์คํ ๋ฆฌ์ง (localStorage)
โ๏ธ ์น ํ์ด์ง์ ์ธ์ ์ด ๋๋๋๋ผ๋ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ์ง์์ง์ง ์๋๋ค. (๋ฐ์ดํฐ ์์์ฑ)
โ๏ธ ์ฌ๋ฌ ์ฐฝ์ด๋ ํญ ๊ฐ์ ๋ฐ์ดํฐ๊ฐ ์๋ก ๊ณต์ ๋๋ค.
โ๏ธ ๋์ผํ ์ปดํจํฐ์์ ๋์ผํ ๋ธ๋ผ์ฐ์ ๋ฅผ ์ฌ์ฉํ ๋๋ง ํด๋นํ๋ค.
// ํค์ ๋ฐ์ดํฐ ์ฐ๊ธฐ
localStorage.setItem("key", value);
// ํค๋ก ๋ถํฐ ๋ฐ์ดํฐ ์ฝ๊ธฐ
localStorage.getItem("key");
// ํค์ ๋ฐ์ดํฐ ์ญ์
localStorage.removeItem("key");
// ๋ชจ๋ ํค์ ๋ฐ์ดํฐ ์ญ์
localStorage.clear();
// ์ ์ฅ๋ ํค/๊ฐ ์์ ๊ฐ์
localStorage.length;
2๏ธโฃ ์ธ์ ์คํ ๋ฆฌ์ง (sessionStorage)
โ๏ธ ์น ํ์ด์ง์ ์ธ์ ์ด ๋๋ ๋ ์ ์ฅ๋ ๋ฐ์ดํฐ๊ฐ ์ง์์ง๋ค.
โ๏ธ ์ฌ๋ฌ ์ฐฝ์ด๋ ํญ์ ์ด ๊ฒฝ์ฐ ๋ฐ์ดํฐ๊ฐ ์๋ก ๊ฒฉ๋ฆฌ๋์ด ์ ์ฅ๋๋ค.
'CodeStates > learning contents' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
S2) Unit 2. [JS] ํด๋์ค์ ์ธ์คํด์ค (0) | 2023.01.13 |
---|---|
S2) Unit 1. [JS] ๊ณ ์ฐจํจ์ (0) | 2023.01.12 |
Section 1. [๊ธฐ์ ๋ฉด์ ] (0) | 2022.12.29 |
Unit 10. [JS/๋ธ๋ผ์ฐ์ ] ์ด๋ฒคํธ ๊ฐ์ฒด (0) | 2022.12.28 |
Unit 10. [JS/DOM] ์ ํจ์ฑ ๊ฒ์ฌ (0) | 2022.12.27 |