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

你可能感兴趣的文章
Okhttp3添加拦截器后,报错,java.io.IOException: unexpected end of stream on okhttp3.Address
查看>>
OKR为什么到今天才突然火了?
查看>>
ollama本地部署DeepSeek(Window图文说明)
查看>>
onclick事件的基本操作
查看>>
onCreate()方法中的参数Bundle savedInstanceState 的意义用法
查看>>
OneASP 安全公开课,深圳站, Come Here, Feel Safe!
查看>>
OneBlog Shiro 反序列化漏洞复现
查看>>
one_day_one--mkdir
查看>>
ONI文件生成与读取
查看>>
onlyoffice新版5.1.2版解决中文汉字输入重复等问题
查看>>
oobbs开发手记
查看>>
OPEN CASCADE Curve Continuity
查看>>
Open Graph Protocol(开放内容协议)
查看>>
Open vSwitch实验常用命令
查看>>
Open WebUI 忘了登入密码怎么办?
查看>>
open-vm-tools-dkms : 依赖: open-vm-tools (>= 2:9.4.0-1280544-5ubuntu3) 但是它将不会被安装
查看>>
open3d-Dll缺失,未找到指定模块解决
查看>>
Openbox-桌面图标设置
查看>>
opencart出现no such file or dictionary
查看>>
opencv Mat push_back
查看>>