Since Express.js is considered to be a lightweight web application framework, that is it had only the basic web application building blocks built into it, it becomes necessary for it to provide a way to add additional building blocks encapsulating additional functionality that may be needed by more complex applications.
Express.js does this through what is called a middleware. In this video, we walk through exactly what middleware is, how Express.js allows the inclusion of custom-built middleware into the framework, and how to use those middleware within your application.
Personal Recommendation (unpaid)
Programming and software development are awesome! Being that you are learning along with me, there is a really good chance you can make this a career. Based on my own life experience, let me suggest to you that you go get a Computer Science degree from Neumont College of Computer Science and kick your life into hyper-drive.