{}JSX se ve como HTML, pero tiene un superpoder que HTML no tiene: puedes insertar cualquier expresión JavaScript usando llaves {}.
Las llaves {} son la puerta entre el mundo JSX y el mundo JavaScript. Todo lo que pongas dentro se evalúa como JavaScript.
Cualquier expresión JavaScript. Una expresión es cualquier cosa que produce un valor:
Hay una distinción importante: dentro de {} puedes poner expresiones pero NO sentencias. Prueba el quiz:
¿Esto se puede usar dentro de { } en JSX?
2 + 2dentro de {} puedes poner expresiones pero NO sentencias.
Expresiones (SÍ funcionan en {}):
2 + 2 → produce 4nombre.toUpperCase() → produce un stringedad >= 18 ? "sí" : "no" → produce un valor[1,2,3].map(n => n * 2) → produce un arraySentencias (NO funcionan en {}):
if (condicion) { ... } → no produce un valorfor (let i = 0; ...) { ... } → no produce un valorconst x = 5; → es una declaraciónLa regla fácil: si puedes ponerlo a la derecha de un = y tiene sentido, es una expresión.
Las llaves también funcionan en los atributos de JSX:
Para strings puedes usar comillas directamente (alt="Foto"), pero para cualquier otro valor necesitas llaves.
Los objetos JavaScript se escriben con {}. Y JSX usa {} para expresiones. ¿El resultado? Doble llave {{}}:
No es una sintaxis especial — son llaves normales anidadas.
Tienes tres variables declaradas: nombre, edad y profesion. Tu misión:
<h1> usando {nombre}<p> usando {edad}<p> usando {profesion}{2026 - edad}Cuando domines las llaves, dominarás JSX.
Las llaves son el puente entre la lógica y la interfaz. Son lo que hace que React sea tan poderoso.