美文网首页
传统js加载、commonJs加载、AMD加载的区别

传统js加载、commonJs加载、AMD加载的区别

作者: 露馅的番茄 | 来源:发表于2018-09-22 15:06 被阅读20次

    1.CommonJS

    是一种前端模块规范,用在服务器端,由Nodejs推广使用;

    特点:

    一个单独的文件就是一个模块。

    每一个模块都是一个单独的作用域。

    用module.exports来输出。
    使用require方法来加载模块,返回文件内部的module.exports对象。

    用法:

    exports.方法名= function(){};

    var math = require(方法名);

    AMD

    AMD是为了弥补commonjs规范不能完美支持浏览器的另一种模板规范

    AMD缩写:Asynchronous Module Definition,意思就是“异步模块定义”。

    AMD也采用require()语句加载模块,但是却与commonjs不同:

    用法:require([module], callback);

    requireJS就是实现了AMD的规范;requireJS的诞生主要解决了这些问题:

    1.实现js文件的异步加载,避免网页失去响应;

    2.管理模块间的依赖性,便于管理维护;

    requireJS的用法:

    1.下载requireJS文件,引入js
    (下载链接:http://www.requirejs.cn/docs/download.html#requirejs

    2.写法:

    //index.html

      require(['js/AMD-c','js/AMD-d'], function(c,d) {
          console.log(c);
          console.log(d);
      });
    

    //定义js文件

    定义js文件

    参考链接

    前端模块化:https://www.jianshu.com/p/d67bc79976e6

    js模块化:https://www.imooc.com/article/20057

    requirejs的用法:http://www.runoob.com/w3cnote/requirejs-tutorial-1.html

    js模块化编程:http://www.cnblogs.com/chenguangliang/p/5856701.html

    CommonJs的规范与使用:https://www.jianshu.com/p/fc858878d891

    CommonJS模块规范:http://javascript.ruanyifeng.com/nodejs/module.html#toc0

    JavaScript之模块化——commonJS、AMD、CMD、ES6:https://blog.csdn.net/yangxiaoyanger/article/details/79566776

    相关文章

      网友评论

          本文标题:传统js加载、commonJs加载、AMD加载的区别

          本文链接:https://www.haomeiwen.com/subject/gbxnnftx.html