๋ ธ๋ง๋์ฝ๋ ํฌ๋กฌ ์ฑ ๋ง๋ค๊ธฐ ํด๋ก ์ฝ๋ฉ ๊ฐ์๋ฅผ ๋ณด๋ค๊ฐ ๊ถ๊ธ์ฆ์ด ์๊ฒจ์ ํ๋ ์ ๋ฆฌ๊ธ์ ๋๋ค.
์ฒ์์ ๋ฐฐ์ธ ๋ const๋ก ๋ณ์๋ฅผ ์์ฑํ๋ฉด ํ์ ๊ฐ์ updateํ ์ ์๋ค๊ณ ๋ฐฐ์ ์ต๋๋ค. ๊ทธ๋ฐ๋ฐ ๊ฐ์ ์ค๊ฐ์ค๊ฐ์ const๋ก ๋ณ์๋ฅผ ์ ์ธํ๊ณ ๋ push ํจ์๋ก array์ ์ถ๊ฐ๋ฅผ ํ๋๋ฐ์!
์ด์ ๋ ์๋์ ๊ฐ์ต๋๋ค.
์ด๋ ์ด๋ ์ค๋ธ์ ํธ ์๋ฃํ์ const๋ก ์ ์ธํด๋ ๋ด๋ถ์ ๊ฐ์ ํ ๋นํ๋๊ฒ์ ํ ์ ์์ต๋๋ค.
Ex) const arr = ["a","b","c"];
arr.push("d"); // arr = ["a","b","c","d"]
๊ทธ๋ฌ๋ arr = { name : "Kim" } ๊ฐ์ด ์๋ฃํ ์์ฒด๋ฅผ ์๋ก ํ ๋นํ๋๊ฒ์ const ํน์ฑ์ ๋์ง ์์ต๋๋ค.
๋ ์์ธํ ์ค๋ช ๐
์์ ์๋ฃํ(primitive type)๊ณผ ์ฐธ์กฐ ์๋ฃํ(reference data type)์ ๋ํด์ ์์๋ณด์๋ฉด ์ข์ ๊ฒ ๊ฐ์์.
์ฐธ์กฐ ์๋ฃํ์ ๊ทธ ์๋ฃ์ ์ฃผ์๋ฅผ ๋ค๊ณ ์๋ ๊ฒ๋๋ค. const a = [1,2,3,4]; ํ๋ฉด a๋ [1,2,3,4]๊ฐ ๋ค์ด์๋ ๋ฐฐ์ด์ ์์์ง์ ์ฃผ์๋ฅผ ๋ค๊ณ ์๋ ๊ฑฐ์์ฌ. ์ด ์ํ์์ ๋ฐฐ์ด์ 5๊ฐ ์ถ๊ฐ ๋๋ 6์ด ์ถ๊ฐ๋๋ a๊ฐ ์์์ง์ ์ ์ฃผ์๋ฅผ ์ฅ๊ณ ์๋ ๊ฑด ๋ณํ์ง ์๋ ์ํ์์ ๋ฐฐ์ด์ ๋ด์ฉ๋ฌผ๋ง ๋ฌ๋ผ์ง๋ ๊ฑฐ์์ฌ. ๋ค๋ง ์ด๋ a์ ๋ค์ด์๋ ์ฃผ์๋ฅผ ๋ฐ๊พธ๋ ค๊ณ ํ๋ค? ์ด๊ฒ์ ์ค๋ฅ๊ฐ ๋ฉ๋๋ค. ๋ง์ํ์ ๋๋ก const๋ก ์ฆ ์์๋ก ์ ์ธํ๊ธฐ ๋๋ฌธ์ด์ฃ .
https://developer.mozilla.org/ko/docs/Glossary/Primitive
๋ ๊ณต๋ถํ๋ค๊ฐ ์ถ๊ฐํ ๋ด์ฉ์ด ์์ผ๋ฉด ์ง์์ ์ผ๋ก ์ ๋ฐ์ดํธ ํ ์์ ์ ๋๋ค.
๋๊ธ์ ์ธ์ ๋ ํ์!