RequireJS was developed by David Mark and its initial version v1.0.0 was released in 2009. It is an open source and version 2.3.3 is its recent stable release.
It provides asynchronous module loading.
It has the ability to load nested dependencies.
If you have many small files, then don't need to worry about keeping track of dependencies order.
It combines and minifies the modules into one script for an optimized experience.
It reduces code complexity in large applications.
It allows for easy debugging as it loads the files from plain script tags.