-
Notifications
You must be signed in to change notification settings - Fork 4
Description
์ด๋ค ์๋ฌ์ธ๊ฐ์?
- ์ ์ค ์คํ ์ดํธ ๊ฐ์ slice๋ก ์คํ ์ดํธ ๋ณต์ฌํ๋ค์ ๋ฐ์ดํฐ ํธ๋ค๋งํ ๋ณต์ฌํ ๊ฐ์ setํจ์๋ฅผ ์ด์ฉํด ๋ณ๊ฒฝ์ ํ์๋๋ฐ
์ํ๋ ๋ถ๋ถ๋ฟ ๋ง ์๋๋ผ ๋ค๋ฅธ๋ถ๋ถ์๋ ์ํฅ์ ์ฃผ๋ ์๋ฌ๊ฐ ๋ฐ์!!
์๋ฌ ๋ฉ์์ง
์๋ฌ ํธ๋ค๋ง ๋ฐฉ๋ฒ
- ๋ฐฐ์ด์ด ๊ฐ์ธ ์คํ ์ดํธ๋ฅผ slice๋ก ๋ณต์ฌํ์ฌ ๋ฐ์ดํฐ ํธ๋ค๋งํ๋ค๊ณ ํ์ฌ๋ slice์์ฒด๊ฐ ์์ ๋ณต์ฌ๊ฐ ๋๊ธฐ ๋๋ฌธ์
๋ฐฐ์ด์์ฒด๋ ์๋ก์ด ๋ฐฐ์ด๋ก ๋ณต์ฌ๊ฐ ๋์ด๋ ์์ชฝ์ ๊ฐ์ฒด๋ ์๋ณธ์ ๋ฐ์ดํฐ์ ๊ฐ์ ๊ฐ์ฒด์ ์ฐธ์กฐ๊ฐ์ ์ฐธ์กฐํ๋ฏ๋ก ๋ฌธ์ ๊ฐ ๋์๋ ๊ฒ์ด๋ค.
(๋ฐฐ์ด([])๊ณผ ๊ฐ์ฒด({}), ํจ์(function(){})์ ์ฐธ์กฐ์๋ฃํ์ด๋ฏ๋ก ๊ฐ์ฒด์ ์ฃผ์๊ฐ์ ์ ์ฅ!! ๊ฐ์ฒด์ ๋ฐ์ดํฐ ๊ทธ์์ฒด๋ฅผ ๊ฐ๋ฅดํค๋๊ฒ์ ์๋)
์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด์ ์ ์ค ์คํ ์ดํธ ๋ฐฐ์ด์์ฒด๋ฅผ slice๋ก ๋ณต์ฌํ์ง ๋ง๊ณ
๊น์๋ณต์ฌ๋ฅผ ์ด์ฉํ์ฌ ํธ๋ค๋ง ํ๋ฉด ๊ธฐ์กด์ ๋ฐฐ์ด์ ์ํฅ์ ์ฃผ์ง์๊ณ ํธ๋ค๋ง ํ์ฌ ์ฌ์ฉ๊ฐ๋ฅํ๋ค.
const [menuArr, setMenuArr] = useState([]);
const copyArr = JSON.parse(JSON.stringify(menuArr));----------(0,๊น์๋ณต์ฌ)
const copyArr = menuArr.slice();----------(X,์์๋ณต์ฌ)