node.js中模块,require
2015-12-10 17:04
821 查看
在php,C++中都有命名空间的概念,命名空间主要是用来解决引入文件存在函数,类,变量重名的问题,在node.js中,没有命名空间这么复杂的概念,在node中,有模块的概念,也就是将功能性的代码都放在一起。然后引入,在本文件中使用。这种不会出现函数名,变量重名问题,在引入的模块中,都是以导入的方式注册的。看下面的例子:
1、这样上面的pi在引入的文件中是没有作用的,它只在circle.js中局部有效。然后exports.设置属性,然后可以回调函数使用这两个函数
注意:
1、如果是目录引入,默认会引入目录下面的index.js这个文件,否则要指定模块名,可以省略.js后缀。
2、使用require引入模块的时候,这个是一个io同步操作的,所以最好是在文件的开头就引入,如果在io量大的地方再引入,就会出现阻塞等一系列问题。性能下降。
//circle.js var pi = 3.14; //计算圆的周长 exports.circle = function(r) { return 2 * pi * r; } //计算圆的面积 exports.area = function(r) { return pi * r * r; } ~
var circle = require('./circle'); console.log(circle.circle(2)); console.log(circle.area(3)); ~
1、这样上面的pi在引入的文件中是没有作用的,它只在circle.js中局部有效。然后exports.设置属性,然后可以回调函数使用这两个函数
注意:
1、如果是目录引入,默认会引入目录下面的index.js这个文件,否则要指定模块名,可以省略.js后缀。
2、使用require引入模块的时候,这个是一个io同步操作的,所以最好是在文件的开头就引入,如果在io量大的地方再引入,就会出现阻塞等一系列问题。性能下降。
相关文章推荐
- C#操作XML文档(XmlDocument、XmlNode、XmlAttribute、SelectSingleNode、SelectNodes、XmlNodeList)
- node开发环境搭建(windows)
- 理解Node.js的事件循环
- nodejs项目在webstorm里进行debug的设定
- nodejs获取当前url和url参数值
- NODE 安装express4.X 失败
- node.js入门总结
- wix xslt for adding node
- leetcode:237 Delete Node in a Linked List-每日编程第四题
- nodejs安装及express
- node.js 的stream(流)和模块系
- node.js读写数据流
- nodejs-模块
- [leetcode] 237. Delete Node in a Linked List
- nodejs 基础问题
- Node环境中出现Object.keys called on non-object
- nodemanager execute container fail many times
- 使用node.js编写server端的helloworld(4)
- Node.js简介(学习笔记)(1)
- Windows系统下安装Node.js(2)