I just recently found out that setState's callback calls with the correct this context per this line in the React source. Nowhere in the documentation is it stated that React internally calls callbacks with context. This should be made clear as many assume it doesn't, leading to unnecessary measures such as arrow functions, explicit binding, etc.
The lack of explicit documentation also creates confusion with other things that do require binding, such as traditional class methods used as event handlers.