개요

const h1 = <h1>Hello world</h1>;

이 코드를 봐라.

분명히 const h1 = ;는 JS인데, <h1>Hello world</h1>는 HTML이다. 이것을 HTML파일에 넣어도 에러가 뜨고, JS파일에 넣어도 에러가 뜬다.

<h1>Hello world</h1>은 JSX라고 불리는 것이다. JSX 컴파일러가 위의 코드를 JS로 바꾸어준다. 즉 JSX 사용은 곧 JSX 컴파일러의 사용을 의미한다.

JSX 컴파일러는 우리가 JSX를 하나의 JS expression처럼 사용할 수 있게끔 컴파일한다. 따라서 진짜 JSX를 JS expression마냥 막 써도 된다. 이것만 기억하면 JSX를 사용한 코딩을 하면서 “어떻게 쓰더라?” 하지 않을 수 있다.

분명, 굳이 JSX나 JSX 컴파일러를 사용하지 않고 개발을 할 수 있으나, 웬만해서는 JSX를 쓴다.

JSX 문법

Render JSX

JSX를 그대로 화면에 보여주는 것은 되게 간단한 작업 같아 보인다. 하지만 우리는 ReactDOM이라는 외부 모듈을 쓴다.