首页 > 代码库 > CommonJs的模块规范
CommonJs的模块规范
CommonJs对模块的定义主要分为模块引用、模块定义、模块标识3个部分。
1.模块引用
模块引用的示例代码如下:
var math = require("match");
2.模块定义
在模块化中,上下文提供require()方法来引入外部模块。对应引入的功能,上下文提供了exports对象用于导出当前模块的方法或者变量,并且它是唯一导出的出口。在模块中,还存在一个module对象,它代表模块自身,而exports是module的属性。在Node中,一个文件就是一个模块,将方法挂载在exports对象上作为属性即可定义导出的方式:
1 //math.js 2 exports.add = function(){ 3 var sum = 0; 4 var i = 0; 5 var args = arguments; 6 var l = args.length; 7 while(i < l){ 8 sum += args[i++]; 9 }10 return sum;11 };
在另一个文件中,我们通过require()方法引入模块后,就能调用定义的属性或方法:
1 //program.js2 var math = require("math");3 exports.increment = function(val){4 return math.add(val, 1);5 };
3.模块标识
模块标识其实就是传递给require()方法的参数,它必须是符合小驼峰命名的字符串,或者以“.”、“..”开头的相对路径,或者绝对路径。它可以没有文件名后缀".js"。
模块的意义在于将类聚的方法和变量等限定在私有的作用域中,同时支持引入和导出功能以顺畅的连接上下游依赖。如下图所示,每个模块具有独立的空间。它们互不干扰,在引用的时候也显得干净利落。
CommonJs的模块规范
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。