[230818] useMemo , Custom hook

useMemo

  • data ์˜ ๊ฐ’์ด ๋ณ€๊ฒฝ๋ ๋•Œ๋งŒ ์žฌ๊ณ„์‚ฐ
  • ๊ณ„์‚ฐ ๊ฒฐ๊ณผ๋ฅผ ๊ธฐ์–ตํ•˜๋ฏ€๋กœ ๋ถˆํ•„์š”ํ•œ ๊ณ„์‚ฐ์„ ์ค„์ด๊ณ  ์„ฑ๋Šฅ ๊ฐœ์„  ๊ฐ€๋Šฅ
  • ์ฃผ๋กœ ๊ณ„์‚ฐ ๋น„์šฉ์ด ํฐ ์—ฐ์‚ฐ,ํ•จ์ˆ˜ ํ˜ธ์ถœ, ๋ Œ๋”๋ง ๊ฒฐ๊ณผ, ๋ Œ๋”๋ง์„ ์œ„ํ•œ ๊ฐ€๊ณต ๋“ฑ์— ์‚ฌ์šฉ
  • ๋‘ ๊ฐœ์˜ ๋งค๊ฐœ ๋ณ€์ˆ˜ ๋ฐ›์Œ
    • ์ฒซ ๋ฒˆ์งธ : ๊ณ„์‚ฐ๋œ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•จ์ˆ˜
    • ๋‘ ๋ฒˆ์งธ : ์˜์กด์„ฑ ๋ฐฐ์—ด (์–ด๋–ค ๊ฐ’์ด ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์ฒซ๋ฒˆ์งธ ํ•จ์ˆ˜ ๋‹ค์‹œ ์‹คํ–‰) ```js import { useMemo } from โ€˜reactโ€™;

function ComplexCalculationComponent({ data }) { const result = useMemo(() => { // ๋ณต์žกํ•œ ๊ณ„์‚ฐ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ํ•จ์ˆ˜ let sum = 0; for (let i = 0; i < data.length; i++) { sum += data[i]; } return sum; }, [data]); // data๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งŒ ์žฌ๊ณ„์‚ฐ

return <div>๊ณ„์‚ฐ ๊ฒฐ๊ณผ: {result}</div>; }

```

Custom hook

  • React ๋กœ์ง์„ ๋ถ„๋ฆฌํ•˜๊ณ  ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ๋กœ ์ถ”์ƒํ™” ํ•˜๋Š”๋ฐ ๋„์›€์ด ๋จ

Categories:

Updated:

Leave a comment