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等

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

posted @   feenan  阅读(16993)  评论(0编辑  收藏  举报
编辑推荐:
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示