Cuando configuramos un controlador de eventos para un componente de función, ¿cómo accede a las variables locales del componente de función? porque cuando se procesaba el componente, se creaban las variables locales y cuando devolvía el código JSX, se eliminaban las variables locales. Entonces, ¿cómo el controlador de eventos en este código registra c en la consola cuando c no debería existir? La función clickHandler se invocó después de que se representó el componente.
function Sample() { let c = 0; const clickHandler = () => { console.log(c); } return <h2 onClick={clickHandler}>'Hello'</h2> } export default Sample;Cómo clickHandler puede acceder a una variable local ( c ) es lo que se llama un cierre .
El cierre permite que una función acceda a las variables en su ámbito léxico (donde está escrito) incluso cuando se pasa como argumento en otro lugar.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures