JSX chỉ chấp nhận biểu thức (expressions) trong {}, không nhận câu lệnh (statements) như if, for, while vì JSX được transpile thành lời gọi hàm.
Ví dụ: {items.map(i => <li key={i.id}>{i.name}</li>)} hợp lệ, nhưng {for(...)} thì không. Dùng ternary cho điều kiện, map/filter để lặp. Nếu logic phức tạp, tính toán bên ngoài return rồi dùng biến trong JSX.