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等
有兴趣的同学们可以自己研究看看,以后有空也会上些这类的文章。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?