[๐Ÿ’ŽReact] ๋ถˆ๋ณ€์„ฑ

h-a-n-aยท2023๋…„ 3์›” 21์ผ
0

๐Ÿ’ŽReact

๋ชฉ๋ก ๋ณด๊ธฐ
7/14

๋ถˆ๋ณ€์„ฑ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ

์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ์—์„œ ์›์‹œํ˜• ๋ฐ์ดํ„ฐ(number, string ,boolean ๋“ฑ๋“ฑ)๋“ค์€ ๋ชจ๋‘ ๋ถˆ๋ณ€์„ฑ์„ ์œ ์ง€ํ•œ๋‹ค.
๋ถˆ๋ณ€์„ฑ์ด๋ž€, ๊ฐ’์ด๋‚˜ ์ƒํƒœ๋ฅผ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์—†๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค.

let a = 1
let b = a

์›์‹œํ˜• ๋ฐ์ดํ„ฐ๋“ค์€ ๋ณต์‚ฌ๊ฐ€ ์ด๋ฃจ์–ด์งˆ ๋•Œ ๊ทธ ๊ฐ’ ์ž์ฒด๋ฅผ ๋ณต์‚ฌํ•ด์„œ ์ƒˆ๋กœ์šด ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ํ• ๋‹นํ•œ๋‹ค.
a -> 0x0001(๋ฉ”๋ชจ๋ฆฌ์ฃผ์†Œ):1(๊ฐ’)
b -> 0x0002(๋ฉ”๋ชจ๋ฆฌ์ฃผ์†Œ):1(๊ฐ’)

์„ค๋ น b=2๋ผ๊ณ  b์˜ ๊ฐ’์„ ๋ฐ”๊พธ๋”๋ผ๋„, a์˜ ๊ฐ’์€ ์—ฌ์ „ํžˆ 1์ด๋ฉฐ,
b -> 0x0003(๋ฉ”๋ชจ๋ฆฌ์ฃผ์†Œ):2(๊ฐ’)์ด๋ ‡๊ฒŒ ์ƒˆ๋กœ์šด ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ์— ์ƒˆ๋กญ๊ฒŒ ํ• ๋‹น์ด ๋˜๋Š” ๊ฒƒ์ด๋‹ค. ์ฆ‰, ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋งˆ๋‹ค ํ• ๋‹น๋œ ๊ฐ’์ด ์ ˆ๋Œ€ ๋ณ€ํ•˜์ง€ ์•Š๋Š” ๋ถˆ๋ณ€์„ฑ์ด ์œ ์ง€๋˜๋Š” ๊ฒƒ์ด๋‹ค.

๊ทธ๋Ÿฌ๋‚˜, ๊ฐ์ฒดํ˜• ๋ฐ์ดํ„ฐ๋“ค์€ ๋ถˆ๋ณ€์„ฑ์„ ์œ ์ง€ํ•˜์ง€ ์•Š๋Š”๋ฐ, ์˜ˆ๋ฅผ ๋“ค์–ด

let arr = [1,2,3]
let arr2= arr
arr2.push(4)

arr๋Š” [1,2,3,4]๊ฐ€ ๋‚˜์˜จ๋‹ค. arr์— ์•„๋ฌด๋Ÿฐ ์ˆ˜์ •์„ ํ•˜์ง€ ์•Š์•˜์Œ์—๋„ ๊ฐ’์ด ๋ณ€๊ฒฝ๋œ ์ด์œ ๋Š” ๊ฐ์ฒดํ˜• ๋ฐ์ดํ„ฐ๋Š” ๋ณต์‚ฌ๊ฐ€ ์ด๋ฃจ์–ด์งˆ ๋•Œ, ๊ฐ’์„ ๋ณต์‚ฌํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ๋ณต์‚ฌํ•˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.

๋ฆฌ์•กํŠธ

๋ฆฌ์•กํŠธ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ state ๋“ฑ์˜ ๊ฐ’์ด ๋ณ€ํ–ˆ๋Š”์ง€ ํ™•์ธํ›„, ์‹ค์ œ๋กœ ๋ณ€ํ–ˆ๋‹ค๋ฉด ์žฌ๋ Œ๋”๋งํ•˜๋Š” ํŠน์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ๋‹ค. ๋ฆฌ์•กํŠธ ๊ธฐ์ค€์œผ๋กœ ๊ฐ’์ด ๋ณ€ํ–ˆ๋‹ค๋ผ๋Š” ๊ฑด, ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ ์ฐธ์กฐ๊ฐ’์ด ๋ณ€ํ–ˆ๋Š”๊ฐ€(์–•์€ ๋น„๊ต) ๋ผ๋Š” ์˜๋ฏธ์ด๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ ๋ฆฌ์•กํŠธ์—์„œ ๋ถˆ๋ณ€์„ฑ์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•œ ๋ฐฉ๋ฒ•์œผ๋กœ๋Š” push/ pop ๊ฐ™์€ ๊ฒƒ๋“ค์ด ์•„๋‹Œ,object.assign/filter/reduce/map๋“ฑ์˜ ๋‚ด์žฅ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด์•ผ ํ•œ๋‹ค.

๋ถˆ๋ณ€์„ฑ ์œ ์ง€ํ•˜๋ฉฐ ๋ฐฐ์—ด ๋ฐ์ดํ„ฐ ์ˆ˜์ •ํ•˜๊ธฐ

๋ฐ์ดํ„ฐ ์ถ”๊ฐ€

๋ฐ์ดํ„ฐ ์ œ๊ฑฐ

๋ฐ์ดํ„ฐ ์ˆ˜์ •

profile
ํ•˜๋ฃจํ•˜๋ฃจ๊ฐ€ ์—ฐ์Šต์ด๋‹ˆ ๋‚ด์ผ์€ ๋” ๊ฐ•ํ•ด์งˆ ๊ฒ๋‹ˆ๋‹ค

0๊ฐœ์˜ ๋Œ“๊ธ€