About State and Lifecycle (참조 사이트) : 먼저, lifecycle이란 React가 컴포넌트의 리턴 값을 렌더링하는 순간 사람이 탄생하는 것처럼 탄생했다가(componentDidMount와 연결),
사람처럼 살아가다가(setInterval을 통해서 state를 계속 바꾸는 것과 같은), 결국에 사람처럼 죽는다. 컴포넌트가 사라진다는 의미(componentWillUnmount와 연결).
이 때, 그 과정을 살펴보면, 먼저, Clock 컴포넌트를 ReactDOM에서 render()했을 때, constructor를 통해 생성이되고(그 안에 state도 생성이 됨), render()메서드가 실행되고(클래스 내에서),
ReactDOM이 실제로 렌더하는 순간, componentDidMount 함수가 실행되고, 그 안의 함수가 실행된다.
그 다음에 쭉 살아가다가(?), 컴포넌트가 제거되면 componentWillUnmount 함수가 실행됨.
이 때, 해당 클래스에 state를 설정해두었다면, state가 바뀔 때마다(값이) react가 그것을 캐치하여 다시 render()함.
그래서 setInterval을 componentDidMount에 해놓으면 state 값이 바뀔 때마다 render()가 되면서 실제 화면에서 값이 바뀌는 것.