const element = <h1>Hello, world</h1>;
컴포넌트 <-> 엘리먼트 : 엘리먼트는 컴포넌트의 "구성 요소"
const element = <h1>Hello, world</h1>;
ReactDOM.render(element, document.getElementById('root'));
function tick() {
  const element = (
    <div>
      <h1>Hello, world!</h1>
      <h2>It is {new Date().toLocaleDateString()}.</h2>
    </div>
  );
  ReactDOM.render(element, document.getElementById('root'));
}
setInterval(tick, 1000);
위 함수는 setInterval() 콜백을 이용해 초마다 ReactDOM.render()를 호출!
실제로 대부분의 React 앱은 ReactDOM.render()를 한 번만 호출
React DOM은 해당 엘리먼트와 그 자식 엘리먼트를 이전의 엘리먼트와 비교하고
DOM을 원하는 상태로 만드는데 필요한 경우에만 DOM을 업데이트함

매초 전체 UI를 다시 그리도록 엘리먼트를 만들었지만
React DOM은 내용이 변경된 텍스트 노드만 업데이트!