render()
Render the component to element
returns: ReactElement or false
Note: Should be pure. This means idempotent and it doesn’t interact with the browser (e.g. setTimeout)
getInitialState()
Get initial value of this.state
returns: object
getDefaultProps()
If a prop isn’t on this.props, then add in the default
returns: object
This is called before any instances are created, so you can’t depend on this.props in it