useCallback

ยท IT/React
useStateconst [state, setState] = useState(initialState)useState๋Š” ๋ฐฐ์—ด์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  ๋น„๊ตฌ์กฐํ™” ํ• ๋‹น์„ ํ†ตํ•ด state, setState๋ฅผ ์ถ”์ถœํ•˜์—ฌ ์‚ฌ์šฉํ•œ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด useState๋Š” ์–ด๋””์„œ ์˜ค๋Š” ๊ฒƒ์ผ๊นŒ? ํ•จ์ˆ˜ํ˜• ์ปดํฌ๋„ŒํŠธ๋Š” ๋ Œ๋”๋ง์ด ๋ฐœ์ƒํ•˜๋ฉด ํ•จ์ˆ˜ ์ž์ฒด๊ฐ€ ๋‹ค์‹œ ํ˜ธ์ถœ๋œ๋‹ค. ๊ทธ๋ ‡๋‹ค๋ฉด ์–ด๋–ป๊ฒŒ ํ•จ์ˆ˜๊ฐ€ ๋‹ค์‹œ ํ˜ธ์ถœ๋˜์—ˆ์„ ๋•Œ ์ด์ „์˜ ์ƒํƒœ๊ฐ’์„ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ธ๊ฐ€?๋ฐ”๋กœ! useState๋Š” closure๋กœ ๊ตฌํ˜„๋˜์–ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด์ „์˜ ์ƒํƒœ๊ฐ’์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ๋‹ค!๊ทธ๋ ‡๋‹ค๋ฉด closure๋ž€ ๋ฌด์—‡์ธ๊ฐ€? ์ด์— ๋Œ€ํ•ด ๋จผ์ € ํ™•์ธํ•ด ๋ณด์ž! closure๋ž€?mdn์— ๋”ฐ๋ฅด๋ฉด ํ•จ์ˆ˜์™€ ๊ทธ ์ฃผ๋ณ€ ์ƒํƒœ(lexical environment, ํ•จ์ˆ˜๊ฐ€ ์ •์˜๋  ๋•Œ ์ฃผ๋ณ€์˜ ์Šค์ฝ”ํ”„์™€ ๋ณ€์ˆ˜์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜..
ยท IT
const memoizedCallback = useCallback( () => { doSomething(a, b); }, [a, b], ); useCallback์€ memoized callback์„ ๋ฆฌํ„ดํ•œ๋‹ค. memoized๋Š” ๋ญ˜๊นŒ? ์œ„ํ‚ค๋ฐฑ๊ณผ์— ๋”ฐ๋ฅด๋ฉด In computing, memoization or memoisation is an optimization technique used primarily to speed up computer programs by storing the results of expensive function calls and returning the cached result when the same inputs occur again. ์ปดํ“จํŒ…์—์„œ memoization ๋˜๋Š” memo..
์†”B
'useCallback' ํƒœ๊ทธ์˜ ๊ธ€ ๋ชฉ๋ก