what is usememo hook in react js code example

Example: usememo hook react

const [a,setA]=useState(0);
const [b,setB]=useState(0);

const pow=(a)=>{
  return Math.pow(a,2);
}

var val= useMemo(()=>{
  return pow(a);  // calling pow function using useMemo hook
},[a]); // only will be called once a will changed (for "a" we can maintain state)


return(
  
   <input type="text" onChange={(e)=>{setA(e.target.value)}}>
   <input type="text" onChange={(e)=>{setB(e.target.value)}}>
  
  

  {val} // to access the value from useMemo
)