To make you understand this you should understand that you need a web server to host the application to run on the web. Then it will be available for most of the people.
But that application needs to be developed somewhere. In this case you need a local server. There are several local server instances like IIS, Wamp, Xampp and nodejs.
If you are getting started with react then you most probably using react app development with its cli creat-react-app or in short CRA. With this structure and configuration of this app, it is hosted locally in node server and on port 3000.
So, to answer your question. localhost is the address which denotes to
127.0.0 and it chose the port
3000 you can configure it to other ports too.
So, when you type
http://localhost:3000 in the addressbar of the browser you can see the first page hosted from your app. You can make use of etc/hosts file to a local name just like
http://localhost:3000 to http://localapp.me too.