NodeJS基础教程之二

   

中午吃完饭,没事就想写写心得了.

今天来说说NodeJS里的模块吧.

说到模块,其实这是一种很好的设计思想,NodeJS里的模块是按CommonJS规范不设计的,不了解CommonJS规范的同学们,可以点击这里查看.

首先我们来定义一个模块,见下面的代码

function DemoModule(){
   var _name='';

   this.setName=function(name){
      _name=name;
  };
  this.getName=function(){
      console.log(_name);
  };
}
module.exports=DemoModule;

 

看完上面的代码之后,相信大家肯定会有疑惑,这个module.exports是什么意思呢

首先module是这里面的全局变量,这个对象里面有很多属性,大家可以

consoel.log(module);

  

打印看看结果,而这个exports属性是外部访问模块的接口,

也就是说,现在外面引用这个模块之后,返回的接口对象就是DemoModule这个类了,直接上代码

//引处demomodule为上面定义的模块的js文件名

var Demo=require('./demomodule');

var obj=new Demo(); //此处的Demo对象就为模块中那个DemoModule类

obj.setName('xu');

obj.getName(); //打印出xu

  

相信大家看完上面的介绍,对模块的概念有一个简单的认识了,其实说到模块

Javascript前端也有模块的概念,比如AMD,CommonJS规范都是来约束Javascript模块的实现的

前面比较好的模块JS类库有require.js,seajs.js等

有兴趣的同学们可以自己研究看看,以后有空也会上些这类的文章。

原文地址:https://www.cnblogs.com/xuwenmin888/p/2987581.html