zoukankan      html  css  js  c++  java
  • nodejs -- 主模块 ,初始化.

    一:知识点:

    1-1: 模块初始化:

    1-2 主模块:

     

     

     二: 测试

    2-1: 代码:

    1) 主模块 1:   main.js

    1 var counter1 = require("./counter.js");
    2 var counter2 = require("./counter.js");
    3 
    4 
    5 console.log(counter1.count());
    6 console.log(counter2.count());
    7 console.log(counter1.count());
    8 console.log(counter2.count());

     2) 主模块2:   main2.js

    1 var counter3 = require("./counter.js");
    2 
    3 
    4 // console.log(counter1); //ReferenceError: counter1 is not defined
    5 
    6 console.log(counter3.count());

     3)处理程序: counter.js

    1 var i = 0;
    2 
    3 function count(){
    4     return ++i;
    5 }
    6 
    7 exports.count = count;

     2-2: 测试

    运行:

    ----------------------------

     分析:

      1.运行 主模块 main.js  , 依次输出 1, 2 ,3, 4  ;  可见 模块counter.js  到导出 对象 只被 初始化一次.

      2.运行 main2.js  , 输出 1 ,不是 5 .  这是因为 通过命令行 重新运行 main2.js .  当做重新启动主模块

        // console.log(counter1); //ReferenceError: counter1 is not defined

        如果取消注释, 这里会报错. 

        因为 counter1 是在  main.js  中定义的.

      3.如果 多次运行 main.js

        

      

      虽然 没有运行 main2.js  , 只是 重复运行 main.js  .  但是 输出 不是按照我们的期望  1 2 3 4 ,  5 6 7 8 , 9 10 11 12 ,

      而是重复的 1 2 3 4 .

      这是因为 每次通过 命令行 运行 main.js  ,  都应该 视作 一个 新的 开始.

    三: 参考链接

       7天学会nodejs

  • 相关阅读:
    2017.10.04
    2017.10.03
    Luogu P3110 [USACO14DEC]驮运Piggy Back
    Luogu P2176 [USACO14FEB]路障Roadblock
    Luogu P3797 妖梦斩木棒
    数列分块入门1-9 By hzwer
    CodeForces 【20C】Dijkstra?
    Luogu P2835 刻录光盘
    Luogu P1692 部落卫队
    Luogu P2847 [USACO20DEC]Moocast(gold)奶牛广播-金
  • 原文地址:https://www.cnblogs.com/cbza/p/7344829.html
Copyright © 2011-2022 走看看