2019独角兽企业重金招聘Python工程师标准>>>

学习node的同时,才开始接触到模块式开发,自然就会接触到CommonJs和AMD,当时应该也是一知半解的状态,今天打算静下心来学习一下vue.js的时候又再次接触到这两个,是该好好的总结一下,一知半解早晚会忘记,还不如不知道,汗!自己的学习动力绝对来自于比较然后自卑!!!回头看看,好像什么都没有过扎实的知识轮廓呀,好失败呀!!

文章参考http://javascript.ruanyifeng.com/nodejs/module.html阮一峰老师的文章

  1. CommonJs
    CommonJS是一种模块式开发规范,NodeJS是这种规范的实现。
    Javascript是强大的面向对象的语言,它的API都是针对浏览器进行应用和开发的,而CommonJs定义了许多非浏览器的API。两者是不冲突的。
  2. CommonJs 相关规范
    参考http://weizhifeng.net/commonjs-module-1.0-specification.html
    一般一个文件就是一个模块,通过require引用一个模块,模块里面的变量和内容都是私有的,而exports对象上的方法和变量是公有的,通过它把模块中的对象暴露出来;
    CommonJS定义的模块分为:{模块引用(require)} {模块定义(exports)} {模块标识(module)}
    require()用来引入外部模块;exports对象用于导出当前模块的方法或变量,唯一的导出口;module对象就代表模块本身,而每一个模块都会有一个module对象,对象上面会有id,filename等相关属性;
  3. CommonJs服务器端“同步”加载模块
    CommonJs模块的加载需要等待前面的模块加载完成才能加载;因为node是服务器端语言,很多文件一般都已经存在在硬盘中,所以加载起来还是很快的

    //setName.js
    var name = "lily";
    var setName = function(){return "my name is "+name
    }
    module.exports.setName = setName;var getName = require("./setName.js");
    console.log(getName)
  4. AMD浏览器端异步加载模块
    基于浏览器的模块式开发就不能在使用CommonJs,这时AMD就应运而生。最常见的就是Require.js;使用define来定义模块

     define(['require'], function (require) {//the require in here is a local require.});define(function (require, exports, module) {//the require in here is a local require.});

转载于:https://my.oschina.net/leonaLily/blog/838461

CommonJs和AMD是什么(20170214)相关推荐

  1. 关于commonjs,AMD,CMD之间的异同

    1.简介 随着前端业务复杂度的增加,模块化成为一个大的趋势.而在ES6还未被浏览器所支持的情况下,commonjs作为ES6中标准模块加载方案,在客服端中的支持情况并不好,现在在客服端中有2中模块化的 ...

  2. Javascript模块规范(CommonJS规范AMD规范)

    Javascript模块化编程(AMD&CommonJS) 前端模块化开发的价值:https://github.com/seajs/seajs/issues/547 模块的写法 查看 AMD规 ...

  3. javascript模块化之CommonJS、AMD、CMD、UMD、ES6

    javascript模块化之CommonJS.AMD.CMD.UMD.ES6 一.总结 一句话总结: CommonJS是同步加载模块,用在服务端:AMD是异步加载模块,用于浏览器端 1.为什么服务器端 ...

  4. CommonJS,AMD,CMD区别 - 郑星阳 - ITeye博客

    CommonJS,AMD,CMD区别 博客分类: seajs和requirejs JavaScript zccst转载 学得比较晕,再次看commonjs,amd, cmd时好像还是没完全弄清楚,今天 ...

  5. js模块化编程之彻底弄懂CommonJS和AMD/CMD!

    为什么80%的码农都做不了架构师?>>>    先回答我:为什么模块很重要? 答:因为有了模块,我们就可以更方便地使用别人的代码,想要什么功能,就加载什么模块. 但是,这样做有一个前 ...

  6. js模块化编程之彻底弄懂CommonJS和AMD/CMD

    转载地址:http://www.cnblogs.com/chenguangliang/p/5856701.html 先回答我:为什么模块很重要? 答:因为有了模块,我们就可以更方便地使用别人的代码,想 ...

  7. 无法找到模块“mint-ui”的声明文件_[搬运] JavaScript 模块化:CommonJS vs AMD vs ES6...

    本文主体部分 翻译+搬运 自外网著名技术博客网站 medium.com 的一篇点赞数 2.7k 的文章 (文章链接在结尾处) 什么是 JavaScript 模块 JavaScript 模块指的是一段可 ...

  8. JS中的CommonJS和AMD

    参考:https://www.cnblogs.com/moxiaowohuwei/p/8692359.html js中function立即执行函数两种写法: (function (p1, p2) {c ...

  9. 前端模块化CommonJS、AMD、CMD、ES6

    一.前端模块化 什么是模块化?为什么前端需要模块化? js代码量激增,放在同一个文件里面,不容易维护,而且牵一发而动全身. 这时候就需要将代码按照逻辑放在不同的文件里面,按照一定的语法规则,遵循特定的 ...

最新文章

  1. 近400万奖金!2021全国人工智能大赛来了
  2. UOJ58 【WC2013】糖果公园
  3. C++接收字符串数组_PHP常用字符串函数(1),PHP面试重点
  4. 域乎曹胜虎:传统互联网“生病”了
  5. POP3口令扫描案例
  6. android 录音原始文件_音频采集:Android基于AudioRecord的实现
  7. 【HDU - 3328】Flipper (栈模拟)
  8. 全球加速产品 方便更多学生获得申请名校的机会
  9. php issign为false,支付宝接口集成及错误排除
  10. 毕马威中国领先地产科技企业50
  11. 小白记事本--学不明白还怕忘记指针--loading未完待续
  12. 简单分布式系统构建知识
  13. 计算机主板的1117标识,AMS1117封装尺寸图_AMS1117引脚图及功能
  14. 证件OCR识别360度全面解析
  15. 计算机专业实习日记,计算机专业实习日记精选
  16. Linux系统怎么复制文件夹下的全部文件到另外文件夹?...
  17. 天梯赛-愿天下有情人都是失散多年的兄妹-题解
  18. Moving to Linux: Kiss the Blue Screen of Death Goodbye!读书笔记1
  19. base64 文件格式判断 图片类型判断 js
  20. 百度地图根据经纬度获取实际地理位置Api接口

热门文章

  1. apache 和tomcat的区别
  2. Delphi Form Designer (窗体设计器)之四
  3. Oracle执行计划相关(待补充)
  4. Django2.0——模板渲染(一)
  5. RMAN-03002、RMAN-06059
  6. 49.SCVMM管理下的Hyper-V到Azure的异地(Azure)容灾
  7. 你不懂的JS学习笔记(作用域和闭包)
  8. 《Android应用开发入门经典(第3版)》——第6.1节创建演示应用
  9. 配置cisco路由器特定时间重启
  10. jquery 选择时间(小时)区间(二)