博客
关于我
Node.js的模块
阅读量:229 次
发布时间:2019-03-01

本文共 1097 字,大约阅读时间需要 3 分钟。

在编写稍大一点的程序时,Node.js推荐将代码模块化处理。每个模块通常对应一个文件,文件路径即为模块名。

在编写每个模块时,开发者可以使用requireexportsmodule等预定义变量。

内置模块

Node.js自带众多内置模块,无需额外安装即可使用。例如:

  • assert – 用于断言检查
  • buffer – 用于处理二进制数据缓冲
  • child_process – 用于创建子进程
  • cluster – 用于处理多核CPU任务

模块的使用

可以通过require()方法加载模块:

var http = require('http');
示例

例如,使用HTTP模块创建服务器:

var http = require('http');  http.createServer(function (req, res) {      res.writeHead(200, {'Content-Type': 'text/html;charset=utf-8'});      res.end('侠课岛');  }).listen(8888);

创建自定义模块

可以创建自己的模块,然后在应用程序中使用。

示例

创建一个返回日期和时间的模块(保存为mymodule.js):

exports.myDateTime = function () {      return Date();  };

然后在Node.js文件中使用该模块:

var http = require('http');  var dt = require('./mymodule');  http.createServer(function (req, res) {      res.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});      res.write("当前日期和时间为:  " + dt.myDateTime());      res.end();  }).listen(8888);

注意:使用./表示模块与当前文件在同一目录下。

将代码保存到test_module.js并运行:

node test_module.js

运行后可在浏览器访问显示日期和时间。

乱码问题解决

如果出现中文乱码问题,需在响应头中添加字符编码:

res.writeHead(200, {'Content-Type': 'text/html; charset=utf-8'});

charset=utf-8设置为UTF-8编码,支持所有Unicode字符。

转载地址:http://hfcv.baihongyu.com/

你可能感兴趣的文章
openlayers 入门教程(二):map 篇
查看>>
openlayers 入门教程(五):sources 篇
查看>>
openlayers 入门教程(八):Geoms 篇
查看>>
openlayers 入门教程(六):controls 篇
查看>>
openlayers 入门教程(十一):Formats 篇
查看>>
openlayers 入门教程(十三):动画
查看>>
openlayers 入门教程(十二):定位与轨迹
查看>>
openlayers 入门教程(十五):与 canvas、echart,turf 等交互
查看>>
openlayers 入门教程(十四):第三方插件
查看>>
openlayers 入门教程(四):layers 篇
查看>>
OpenLayers 项目分析(三)-OpenLayers中定制JavaScript内置类
查看>>
Openlayers下载与加载geoserver的wms服务显示地图
查看>>
Openlayers中使用Cluster+Overlay实现点击单个要素和聚合要素时显示不同弹窗
查看>>
Openlayers中使用Cluster实现点位元素重合时动态聚合与取消聚合
查看>>
Openlayers中使用Cluster实现缩放地图时图层聚合与取消聚合
查看>>
Openlayers中使用Image的rotation实现车辆定位导航带转角(判断车辆图片旋转角度)
查看>>
Openlayers中使用Overlay实现点击要素弹窗并且弹窗随之移动
查看>>
Vmware系列&虚拟机系列【仅供参考】:使用vCenter Auto Deploy制作ESXI系统封装(适合高版本vSphere)
查看>>
Openlayers中加载GeoJson文件显示地图
查看>>
Openlayers中加载Geoserver切割的EPSG:900913离线瓦片图层组
查看>>