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

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

编写稍大一点的程序时一般都会将代码模块化。在NodeJS中,一般将代码合理拆分到不同的JS文件中,每一个文件就是一个模块,而文件路径就是模块名。

在编写每个模块时,都有requireexportsmodule三个预先定义好的变量可供使用。

内置模块

Node.js有一组内置模块,无需进一步安装即可使用。例如assert、buffer、child_process、cluster等。

模块的使用

可以使用require()指令来载入模块:

var http = require('模块名');
示例:

例如使用应用程序访问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();};

exports关键字的作用是使模块文件外部的属性和方法可用。

然后将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);

上述代码中使用了./来定位模块,表示该模块与Node.js文件位于同一文件夹中。

将代码保存到test_module.js文件中,然后运行文件

node test_module.js

访问,可以看到显示日期和时间。如下所示:

乱码问题

如果使用中文,出现了乱码问题,需要添加:

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

charset=utf-8用于设置编码,表示当前文档的字符集是采用utf-8的字符。utf-8是针对Unicode的一种可变长度字符编码,可以用来表示Unicode标准中的任何字符。

更多可看:https://www.9xkd.com/

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

你可能感兴趣的文章
Mysql5.7深入学习 1.MySQL 5.7 中的新增功能
查看>>
Webpack 之 basic chunk graph
查看>>
Mysql5.7版本单机版my.cnf配置文件
查看>>
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>