博客
关于我
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/

你可能感兴趣的文章
OpenCV与AI深度学习 | 深度学习检测小目标常用方法
查看>>
OpenCV与AI深度学习 | 超越YOLOv10/11、RT-DETRv2/3!中科大D-FINE重新定义边界框回归任务
查看>>
OpenCV与AI深度学习 | 高效开源的OCR工具:Surya-OCR介绍与使用
查看>>
OpenCV与AI深度学习|16个含源码和数据集的计算机视觉实战项目(建议收藏!)
查看>>
Opencv中KNN背景分割器
查看>>
OpenCV中基于已知相机方向的透视变形
查看>>
OpenCV中的监督学习
查看>>
opencv中读写视频
查看>>
OpenCV中遇到Microsoft C++ 异常 cv::Exception
查看>>
opencv之cv2.findContours和drawContours(python)
查看>>
opencv之namedWindow,imshow出现两个窗口
查看>>
opencv之模糊处理
查看>>
Opencv介绍及opencv3.0在 vs2010上的配置
查看>>
OpenCV使用霍夫变换检测图像中的形状
查看>>
opencv保存图片路径包含中文乱码解决方案
查看>>
OpenCV保证输入图像为三通道
查看>>
OpenCV入门教程(非常详细)从零基础入门到精通,看完这一篇就够了
查看>>
opencv图像分割2-GMM
查看>>
opencv图像分割3-分水岭方法
查看>>
opencv图像切割1-KMeans方法
查看>>