

import React from 'react'
import { useState } from 'react';
function Ex03_Memo() {
const[list, setList] = useState([1,2,3,4,5]);
const[str, setStr] = useState("안녕");
const getSumResult = ()=>{
let sum=0;
list.forEach((i)=>{
sum += i;
});
return sum;
}
return (
<div>Ex03_Memo
{
list.map((no,i)=><h5 key={i}>{no}</h5>)
}
<h3>{str}합계: {getSumResult ()}</h3>
<button onClick={()=>setList([10, ...list])}>추가</button>
<button onClick={()=>setStr("총계")}>str 값 변경</button>
</div>
)
}
export default Ex03_Memo

import React from 'react'
import { useMemo } from 'react';
import { useState } from 'react';
function Ex03_Memo() {
const[list, setList] = useState([1,2,3,4,5]);
const[str, setStr] = useState("안녕");
// const getSumResult = ()=>{
// let sum=0;
// list.forEach((i)=>{
// sum += i;
// });
// return sum;
// }
const memoResult = useMemo(()=>{
console.log("test")
let sum=0;
list.forEach((i)=>{
sum+=i;
})
return sum;
}, [list]);
return (
<div>Ex03_Memo
{
list.map((no,i)=><h5 key={i}>{no}</h5>)
}
{/* <h3>{str}합계: {getSumResult ()}</h3> */}
<h3>{str}합계: {memoResult}</h3>
<button onClick={()=>setList([10, ...list])}>추가</button>
<button onClick={()=>setStr("총계")}>str 값 변경</button>
</div>
)
}
export default Ex03_Memo
developer theme - green coffee

'Dev > React' 카테고리의 다른 글
| [React] 비동기 통신 Ajax 이해하기 | Axios 비교 (0) | 2026.04.09 |
|---|---|
| [React] TodoList 실습으로 핵심 문법 - 데이터 전달과 CRUD (0) | 2026.04.08 |
| [React] ustState 예제 - 구조분해할당, Map (0) | 2026.04.06 |
| [React] 리액트 개요, 환경설정 | Nodejs 설치 | VS코드 확장플러그인 추천 (0) | 2026.04.02 |
| 자바스크립트 함수선언방식 | 함수선언방식, 함수표현식, 화살표함수, function생성자 함수 , window객체 주요함수 (0) | 2026.03.30 |