• 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.js
    2 var math = require("math");
    3 exports.increment = function(val){
    4     return math.add(val, 1);
    5 };

    3.模块标识

    模块标识其实就是传递给require()方法的参数,它必须是符合小驼峰命名的字符串,或者以“.”、“..”开头的相对路径,或者绝对路径。它可以没有文件名后缀".js"。

    模块的意义在于将类聚的方法和变量等限定在私有的作用域中,同时支持引入和导出功能以顺畅的连接上下游依赖。如下图所示,每个模块具有独立的空间。它们互不干扰,在引用的时候也显得干净利落。

  • 相关阅读:
    jmeter巧用自增长型变量
    jmeter实现一次登录,多次业务请求(不同线程组间共享cookie和变量)
    jmeter实现IP欺骗
    基于jmeter+ant实现的接口自动化测试
    基于Robot Framework的接口自动化测试
    至少与至少
    code+7正式赛划水记+HardA~C题解
    code+7彩蛋题题解
    开发一个博客园系统
    beautifulSoup模块
  • 原文地址:https://www.cnblogs.com/mxk258/p/4242213.html
Copyright © 2020-2023  润新知