Module loaders take care of loading modules at runtime. Different loaders support different combinations of module formats. They are useful as soon as your target environment cannot load all the modules that you intend to make use of (for example, if you want to load AMD modules in a web browser).
However, bundlers provide a much more powerful and interesting alternative, as we'll see shortly!
Here are a few examples of module loaders:
- SystemJS: https://github.com/systemjs/systemjs
- jspm.io: https://jspm.io
- StealJS: https://stealjs.com
- RequireJS: https://requirejs.org